11 March 2016 - Forum Rules
Started by redmagejoe, December 10, 2019, 03:09:14 AM
Quote from: abw on May 01, 2022, 06:54:10 PMSometime shortly after that the formula was updated to divide the sum of skill levels by 8, becauseis exactly how it works, and that was indeed way overpowered ."Working like a normal unresistable spell" translates to "spell power is increased by floor(caster's Spirit / 4)" + "average number of hits = spell level + spell level * accuracy %" + "target's magic evasion is ignored", so the formula for Ultima looks more like:spell power = 25 + floor(caster's Spirit / 4) + floor(sum(caster's skill levels) / [skill levels are 0..15, not 1..16]and then that spell power gets passed in to the standard routine for unresistable spell damage:average damage = (spell power * (1 + random(0..spell power)) + spell power * 0.05) * (spell level * accuracy %)So in the PSP formula, it looks like the base damage value incorporates most of the damage calculation, and the average damage is basically the base damage * 1.05, but in the NES version, the spell power is part of a larger calculation, and the average damage is basically (spell power * 1.55) * number of hits.The damage functions scale very differently (PSP is quadratic in skill levels vs. linear in ours), but in general, the PSP version appears to be more powerful than our current version for low levels of Ultima (where the +100 dominates) regardless of the caster's overall power and when the caster has at least 50% of their maximum power (where the skill level squared dominates) regardless of Ultima's level.
Quote from: flamefury on May 02, 2022, 03:32:52 PMI'm still not sure how you're coming to the conclusion that PSP version is more powerful at lower levels. Reminder that the +100 is not multiplied by Ultima's level. It's only relevant for very low level sums.
<Average Damage> = (<Ultima Level> * (<Tier> + floor(<Tier> / 2)) ^ 2 + 100) * 1.05 + 0.5 * ((<Ultima Level> * (<Tier> + floor(<Tier> / 2)) ^ 2 + 100) % 256)
<Average Damage> = (<Ultima Level> * (1.5 + min(0.5, <Tier> / 16))) * (25 + floor(99 * <Tier> / 16 / 4) + floor(24 * (<Tier> - 1) / 8)) * 1.55
andi a0,s3,0xFF # s3 = base damage, get the lowest bits of damage, save into a0pos_08932D74: jal z_un_088a6470 # Rolls 0~a0(=damage % 256) for random damage bonus, outputs into v0 andi s4,s3,0xFFFF # Copies base damage into s4 andi v0,v0,0xFF # Not necessary, but capping v0 to 255 addu v0,s4,v0 # Adding into s4 for running sum of damage
0C/9EE2: A9 00 LDA #$000C/9EE4: 85 76 STA $760C/9EE6: A9 15 LDA #$150C/9EE8: 85 68 STA $680C/9EEA: A9 08 LDA #$08 ; $08: "No Magic..."0C/9EEC: 85 66 STA $660C/9EEE: A9 58 LDA #$58 ; <- try changing this to LDA #$56 to shift the text left by 2 tiles0C/9EF0: 85 67 STA $670C/9EF2: 4C 2F 97 JMP $972F ; load battle text
Quote from: flamefury on May 14, 2022, 10:27:43 PMMaybe something more like a randomization cap that's determined as a function of Ultima level and the level sum, starting at 0 when level sum tier is 0 and Ultima 1 and then capping out at 255 (or 510 or something like that) when the level sum tier is capped and Ultima 16.
Quote from: Mirage on May 14, 2022, 11:49:02 PMOn the subject of Ultima, would it be possible to break up the Ultima-level-dependent part of the damage formula into individual hits and then tack on the base 100 damage at the end? I'm curious on how having multiple lower-damage hits would affect the randomization and critical damage parts of the formula.
Quote from: AwesomeHairo on June 02, 2022, 01:56:50 PMHi everyone. I was able to remove Firion, or whatever you name him, from when the whole party gets wiped out. Thanks for that, abw.
Quote from: AwesomeHairo on June 02, 2022, 01:56:50 PMSomething else I want to do is move Battle Message, Message 9 (まほうは つかえません) a bit more to the left the Magic submenu in battle is opened.
Quote from: AwesomeHairo on June 02, 2022, 01:56:50 PMAlso, for Misc 1, Message 15 (????), is this unused? I've never found this in any capacity.
Quote from: AwesomeHairo on June 02, 2022, 01:56:50 PMAnd for Misc 2, Message 30, can  (for example, ) be used to save space for Misc 2?
Quote from: AwesomeHairo on June 02, 2022, 01:56:50 PMAnd by the way, I've completed every modification I wanted to regarding text. If anyone is interested in looking over my script to improve any existing translation that has been uploaded, I would be more than happy to provide. I usually aim for a "60% localised, 40% literal" approach.
Page created in 0.137 seconds with 20 queries.