Jul 14, 2011 at 3:11 AM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
The most polite way I know is the full "domo arigatou gozaimasu", which is a bit of a mouthful. I have never heard shimasu used with it, but really I don't know it well enough to guarantee that it's incorrect.
 
Jul 14, 2011 at 3:45 AM
Senior Member
"Wahoo! Upgrade!"
Join Date: Jul 13, 2011
Location: Submerged in the colour orange
Posts: 63
GIRakaCHEEZER said:
The most polite way I know is the full "domo arigatou gozaimasu", which is a bit of a mouthful. I have never heard shimasu used with it, but really I don't know it well enough to guarantee that it's incorrect.

To be honest, I trust you more. I learned most of my Japanese (which is barely any) from online lessons, most likely including "thank you". I started Rosetta Stone afterwards but got sidetracked...
 
Jul 14, 2011 at 5:30 AM
LSD
"..."
Join Date: Jun 2, 2011
Location:
Posts: 397
Age: 25
No one answered my question...
._.
 
Jul 14, 2011 at 5:47 AM
Senior Member
"Wahoo! Upgrade!"
Join Date: Jul 13, 2011
Location: Submerged in the colour orange
Posts: 63
Pigaro said:
No one answered my question...
._.

Where is the blue Quote's sprite located? Did you just redo an original sprite (Quote, maybe)? That's probably the case, but if you put the sprite in a new spot, that would possibly cause trouble. Also, if you happen to know where the <null> sprite is located, you can always check that spot to see if blue Quote is there. I don't have much know-how of all of this though. :/

EDIT: Oh, and make sure you didn't change the overall size of the sprite, unless you were able to counteract everything it pushed.
 
Jul 14, 2011 at 5:53 AM
In my body, in my head
Forum Moderator
"Life begins and ends with Nu."
Join Date: Aug 28, 2009
Location: The Purple Zone
Posts: 5998
null/invis entities usually occupy the top-left of NpcSym.pbm
 
Jul 14, 2011 at 2:05 PM
LSD
"..."
Join Date: Jun 2, 2011
Location:
Posts: 397
Age: 25
Orange said:
Where is the blue Quote's sprite located? Did you just redo an original sprite (Quote, maybe)? That's probably the case, but if you put the sprite in a new spot, that would possibly cause trouble. Also, if you happen to know where the <null> sprite is located, you can always check that spot to see if blue Quote is there. I don't have much know-how of all of this though. :/

EDIT: Oh, and make sure you didn't change the overall size of the sprite, unless you were able to counteract everything it pushed.

I just edited the original sprite. It's located at the same point I believe. I don't know where <null> is. Actually, I've never known there was one. I didn't change the size.

Noxid said:
null/invis entities usually occupy the top-left of NpcSym.pbm
Yeah, the invisible square. The problem is that it just doesn't. I'm gonna edit something first in a different Doukutsu, and get back to you.
 
Jul 14, 2011 at 6:28 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Could someone check my code?
Code:
CPU Disasm
Address   Hex dump          Command
00424EAF  |> \A1 D85A4A00   MOV EAX,DWORD PTR DS:[4A5AD8]
00424EB4  |.  0305 E05A4A00 ADD EAX,DWORD PTR DS:[4A5AE0]
00424EBA  |.  0FBE48 01     MOVSX ECX,BYTE PTR DS:[EAX+1]
00424EBE      83F9 41       CMP ECX,41
00424EC1      75 70         JNE SHORT 00424F33
00424EC3      8B15 D85A4A00 MOV EDX,DWORD PTR DS:[4A5AD8]
00424EC9  |.  0315 E05A4A00 ADD EDX,DWORD PTR DS:[4A5AE0]
00424ECF  |.  0FBE42 02     MOVSX EAX,BYTE PTR DS:[EDX+2]
00424ED3      83F8 49       CMP EAX,49
00424ED6  |.  75 5B         JNE SHORT 00424F33
00424ED8  |.  8B0D D85A4A00 MOV ECX,DWORD PTR DS:[4A5AD8]
00424EDE  |.  030D E05A4A00 ADD ECX,DWORD PTR DS:[4A5AE0]
00424EE4  |.  0FBE51 03     MOVSX EDX,BYTE PTR DS:[ECX+3]
00424EE8      83FA 52       CMP EDX,52
00424EEB  |.  75 46         JNE SHORT 00424F33
00424EED  |.  A1 E05A4A00   MOV EAX,DWORD PTR DS:[4A5AE0]
00424EF2  |.  83C0 04       ADD EAX,4
00424EF5  |.  50            PUSH EAX
00424EF6  |.  E8 05CAFFFF   CALL 00421900
00424EFB  |.  83C4 04       ADD ESP,4
00424EFE      8B15 DCE64900 MOV EDX,DWORD PTR DS:[49E6DC]
00424F04      B9 0A000000   MOV ECX,0A
00424F09      0FAFC8        IMUL ECX,EAX
00424F0C      01CA          MOV EDX,ECX
00424F0E      EB 1D         JMP SHORT 00424F2E
00424F2E  |.^ E9 74030000   JMP 004252A7

It's a TSC event, <AIRXXXX. It stores current air to EDX, finds the first parameter and stores it to EAX, MOVs 0A (10 in decimal) to ECX, multiplies EAX by ECX, and MOVs ECX to EDX. This should make the TSC event <AIR set the player's current amount of air, but it just freezes. Does anyone see the problem?
Oh, and the JMP SHORT at the end is because there's a load of NOPs after it.
 
Jul 14, 2011 at 8:06 PM
Not anymore
"Run, rabbit run. Dig that hole, forget the sun."
Join Date: Jan 28, 2010
Location: Internet
Posts: 1369
Age: 34
Code:
00424EAF  |> \A1 D85A4A00   MOV EAX,DWORD PTR DS:[4A5AD8]  ;CurrentScript
00424EB4  |.  0305 E05A4A00 ADD EAX,DWORD PTR DS:[4A5AE0]  ;Script position
00424EBA  |.  0FBE48 01     MOVSX ECX,BYTE PTR DS:[EAX+1]
00424EBE      83F9 41       CMP ECX,41
00424EC1      75 70         JNE SHORT 00424F33
00424EC3      8B15 D85A4A00 MOV EDX,DWORD PTR DS:[4A5AD8]
00424EC9  |.  0315 E05A4A00 ADD EDX,DWORD PTR DS:[4A5AE0]
00424ECF  |.  0FBE42 02     MOVSX EAX,BYTE PTR DS:[EDX+2]
00424ED3      83F8 49       CMP EAX,49
00424ED6  |.  75 5B         JNE SHORT 00424F33
00424ED8  |.  8B0D D85A4A00 MOV ECX,DWORD PTR DS:[4A5AD8]
00424EDE  |.  030D E05A4A00 ADD ECX,DWORD PTR DS:[4A5AE0]
00424EE4  |.  0FBE51 03     MOVSX EDX,BYTE PTR DS:[ECX+3]
00424EE8      83FA 52       CMP EDX,52
00424EEB  |.  75 46         JNE SHORT 00424F33
00424EED  |.  A1 E05A4A00   MOV EAX,DWORD PTR DS:[4A5AE0]  ;Script position
00424EF2  |.  83C0 04       ADD EAX,4                      ;First 4-digit number
00424EF5  |.  50            PUSH EAX
00424EF6  |.  E8 05CAFFFF   CALL 00421900                  ;ASCII to Number
00424EFB  |.  83C4 04       ADD ESP,4
00424EFE      8B15 DCE64900 MOV EDX,DWORD PTR DS:[49E6DC]
00424F04      B9 0A000000   MOV ECX,0A
00424F09      0FAFC8        IMUL ECX,EAX
00424F0C      01CA          MOV EDX,ECX                    ;You have to store EDX back to [49E6DC]!
00424F0E      EB 1D         JMP SHORT 00424F2E
00424F2E  |.^ E9 74030000   JMP 004252A7

Well, the problem I see is that you never store the result EDX back to the memory location [49E6DC].
You need to do:

MOV DWORD PTR DS:[49E6DC],EDX

right after MOV EDX,ECX.

If [49E6DC] is a box that I can put numbers in, then doing MOV EDX,DWORD PTR DS:[49E6DC] does not store the "box" into EDX. It just stores the number hidden inside the box into EDX. Basically, you stored the current oxygen (the amount of oxygen) into EDX, got a result, and threw the result away. To fix it, save the result by MOVing EDX back to the oxygen offset.

Also, you probably don't need all those MOVs. The basic goal is:

Multiply the number in EAX by 10. (EAX holds the first parameter)
Store that number to the current oxygen.

This is possible in 2 instructions:

Code:
CPU Disasm
Address   Hex dump          Command                         Comments
00424EFE  6BC0 0A       IMUL EAX,EAX,0A                 ;Multiply EAX by 10, store back to EAX.
00424F01  A3 DCE64900   MOV DWORD PTR DS:[49E6DC],EAX   ;MOV EAX into [49E6DC]

Now, since your game is freezing, I'm not exactly sure why. I'd have to test the code first.
 
Jul 14, 2011 at 8:28 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Thanks. It still freezes, though. I can PM you the file if you want.
 
Jul 14, 2011 at 9:00 PM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Check your jumps. Jumps are almost always the problem.
 
Jul 14, 2011 at 9:05 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
The jmps, eh? Well, the JMP 424F33 jumps to the next TSC command thing. The JMP SHORT 424F2E jumps to the JMP 4252A7 jumps to the beginning of the parser. They should work. Even when I take out the JMP SHORT it freezes.
 
Jul 14, 2011 at 9:22 PM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
You could always try running it through ollydbg to see WHERE it's freezing.
 
Jul 14, 2011 at 9:41 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
I did, but carrotlord helped me out. Apparently I was missing a vital TSC command part.
 
Jul 14, 2011 at 10:18 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
Yes. You didn't add to the tsc pointer (where you are in the code), so it kept running the same command over and over and over.
 
Jul 15, 2011 at 3:00 AM
Senior Member
"Wahoo! Upgrade!"
Join Date: Jul 13, 2011
Location: Submerged in the colour orange
Posts: 63
Code:
#0200
<KEY<CMU0027<MYD0002<FAI0004
<ANP0500:0042:0000<BOA0020<WAI0100
<DNP0500<BOA0010
<MSG<TUR!!TEXT MOST LIKELY!!<NOD<BOA0100<BSL0000<END

#0201
<KEY<BOA0130<DNA0110<DNA0104
<MSG
Completed First Trial!<NOD<FL+0009
<FAO0004<TRA0102:0200:0005:0011

What the hell is wrong with this? I'm trying to have a Balfrog fight.
The things I changed (compared this to the script in Boss Rush):
Direction and location of the player and boss
Text in the messages
Removed flags that were for other non-included events
Changed map tileset to Oside
Balfrog's event number (I made sure to change each and every one in the script)
The music...

Can I not change the tileset? The special boss script and the NPC tilesets were all unchanged (2 - Balfrog, Frog, and Weed respectively). Can I not change its direction? It seems rather arbitrary.
 
Jul 15, 2011 at 3:08 AM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Well I don't think balfrog is a special boss, so it wouldn't be <BSL0000. I'm pretty sure <BOA is useless; you can just use <ANP. After a <MSG<TUR, you need <NOD AND <CLO. <NOD only checks for a key; it doesn't close the message box.
And if you want #0201 to show up after balfrog is defeated, make sure balfrog's event # is 201 and "run script upon death" flag is checked.
 
Jul 15, 2011 at 3:11 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
Orange said:
Code:
#0200
<KEY<CMU0027<MYD0002<FAI0004
<ANP0500:0042:0000<BOA0020<WAI0100
<DNP0500<BOA0010
<MSG<TUR!!TEXT MOST LIKELY!!<NOD<BOA0100<BSL0000<END

#0201
<KEY<BOA0130<DNA0110<DNA0104
<MSG
Completed First Trial!<NOD<FL+0009
<FAO0004<TRA0102:0200:0005:0011

What the hell is wrong with this? I'm trying to have a Balfrog fight.
The things I changed (compared this to the script in Boss Rush):
Direction and location of the player and boss
Text in the messages
Removed flags that were for other non-included events
Changed map tileset to Oside
Balfrog's event number (I made sure to change each and every one in the script)
The music...

Can I not change the tileset? The special boss script and the NPC tilesets were all unchanged (2 - Balfrog, Frog, and Weed respectively). Can I not change its direction? It seems rather arbitrary.

Did you change the special boss part in the settings to Balfrog? And I don't think you can change the direction unless you use assembly.
 
Jul 15, 2011 at 3:13 AM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Huh, I guess it is a special boss. Silly me!
Hey, does a special boss play a specific event upon death?
 
Jul 15, 2011 at 3:15 AM
Senior Member
"Wahoo! Upgrade!"
Join Date: Jul 13, 2011
Location: Submerged in the colour orange
Posts: 63
LunarSoul said:
Well I don't think balfrog is a special boss, so it wouldn't be <BSL0000. I'm pretty sure <BOA is useless; you can just use <ANP. After a <MSG<TUR, you need <NOD AND <CLO. <NOD only checks for a key; it doesn't close the message box.
And if you want #0201 to show up after balfrog is defeated, make sure balfrog's event # is 201 and "run script upon death" flag is checked.

Well, Balfrog is listed under the special boss scripts thing in Map Properties and the original Balfrog fight had the exact same <BSL and <BOA functions, so I kept them untouched. As far as <CLO goes, the original didn't have that either, and when I test the fight, it indeed closes itself. The boss just doesn't appear. The message box closes, the Boss health at the bottom appears, but the boss just doesn't exist; not interactive or visible.

EDIT: Apparently, special bosses have fixed spawn locations, so I will return it to its rightful location and see if that fixes the problem.
 
Jul 15, 2011 at 3:18 AM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Now I'm caught up.
Special bosses appear at a certain place on the map, since you can't pick a place manually. That's why balfrog is in a small map. It has to be the same arena size as the original, but you can do what you want in there. I suppose you can increase the size, but just make sure the player is in the area where the boss appears when it appears.
 
Top