Quick Modding/Hacking Answers Thread

Feb 24, 2011 at 6:11 PM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Noxid said:
Anyway, there's also the option of just assembler/hex editing the value push'd since nobody uses <MPJ anyway.

How would one do that? Cause that sounds useful. What would the map limit be then?
 
Feb 24, 2011 at 6:15 PM
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
Pronouns: he/him
If you make sure that the value at 414B24 is never more than uh... 0x7F, let's say, when you release then you should be safe at least on this front. Although if memory serves there are other things that might need to be changed for exceptionally large numbers of maps.. Lace would know better than I, I think. I never had that sort of problem, so I never looked into it.
 
Feb 24, 2011 at 7:53 PM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Noxid said:
It just makes 3 sequential calls to CreateBullet()...
As an example, at 41EC18 - 41EC9F

A for loop would be much smaller... D:

I just fixed my missile launcher so the lv 3 doesnt fire 3 missiles. And... BOY you weren't kidding! There was a case for it for each direction (which I expected, but it tripled the size of each part of the function) and there was another entire set for the super missile launcher, which confuses me because the projectiles are declared apart from this whole launching fuss. :pignon2:
 
Feb 24, 2011 at 9:02 PM
Junior Member
"It's dangerous to go alone!"
Join Date: Aug 27, 2009
Location: Oregon
Posts: 33
Pronouns: he/him
A have yet another question, and it has me a bit perplexed. I was working on making a modding tutorial and researching how to remove the (C)Pixel requirement, and looked at my mods, both of them had the string still in place, but all the time I worked on them I experienced no issues when it was there. I thought I deleted it earler, when I first started them, but I guess I did not. For safety, and learning, what EXACTLY do I have to delete in the PIXEL string. I don't want to delete too much, or too little. The thing is my mods work fine with it still in there, but I don't want an unexpected issue to come up. I've been using Sue's Workshop version 0.3a (.PBM one).

I'll post an image, and can someone PM me a link of the image, edited highlighting the EXACT values that need to be replaced with zeros?

Sorry for asking all this, but I'm worried the file will suddenly not work if I leave it in there. In addition, can someone explain why my mod would still work even if this string was still left in there. I have edited tons of images and stuff, I don't get why it's not causing errors? Is there some TSC code in SW that does the same thing as this that I forgot I removed?

Thanks again for all your help, I really do appricaite it!

Link To Image
/i/?c0g3hd8ks5x9msb
 
Feb 24, 2011 at 10:58 PM
Level 73 Procrastinator
"Life begins and ends with Nu."
Join Date: Apr 6, 2009
Location: Forgotten Tower
Posts: 2052
I hope I got this right

Uhm, if I'm reading you correctly, and if I remember right, there are two ways to remove the (C)Pixel requirement...
One, the manual way you're asking for, I believe, is to edit the last eight or so values in the file. Those are the ones that spell out (C)Pixel.
I have no idea what kind of Hex editor you're using, it seems to garble the (C)Pixel bit, but you can clearly see it in Translhextion:
p197836-0-cpixelexample.jpg

I've highlighted the exact bytes you'd want to edit out, just make them into 00's.
Mind you, you'd have to repeat it in every single image file... which is why the second path is more appealing, usually.

The second way sounds like it's already working on a few of your mods...
Simply remove the part of the code in the EXE itself that's looking for the (C)Pixel requirement, and you no longer have to mess with it at all.
Cave Editor can now do this automatically, opening the EXE and going to Game Settings gives an option to remove the requirement or even change it to something else. You can even change the extension for image files {Make them go back to .bmps if you want, for example} and even the name for the save files.
But remember that you can't do this to a mod if you're already using Sue's Workshop on it, else you basically end up bricking it...
But you can do this manually as well with a Hex Editor, just change offset x8C4D8 to 00, and the game will cease checking for (C)Pixel completely.
 
Feb 25, 2011 at 1:39 AM
Junior Member
"It's dangerous to go alone!"
Join Date: Aug 27, 2009
Location: Oregon
Posts: 33
Pronouns: he/him
Re: I hope I got this right

"But you can do this manually as well with a Hex Editor, just change offset x8C4D8 to 00, and the game will cease checking for (C)Pixel completely."
Can you point out where in the hex editor or in Sues Workshop 0.3a I can change this value, you are probably right about me going the second way, but I forget how exactly I changed this offest vaule? I can't seem to find it using the hex editor...

Nevermind, that offest is the "(" in the (C) Pixel, number 2 in the 28, in the 28, 43, 29, 50 at line 0008C4D0 line in the hex editor.
 
Feb 25, 2011 at 3:22 PM
Pirate Member
"Heavy swords for sale. Suitable for most RPG Protagonists. Apply now!"
Join Date: Dec 26, 2007
Location: Lithuania
Posts: 1946
You can't mate. The only way to get hurt while TSC is running is to have tiles do damage.
 
Feb 25, 2011 at 4:26 PM
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
Pronouns: he/him
It's possible >_>;
Although there is a good reason for it to be the way it is which I forget
I haven't got time to look for it right now though.
 
Feb 25, 2011 at 4:48 PM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Well, if you say so.

Still, I could -really- use some sort of generator npc that can spawn another npc by an ID specified through CE (like, setting the ent ID of the thing. though, I know generators already use ent ID and event # as an interval frequency and an offset. this generator would have to spawn randomly. Like, EntID = NPC to make, Event# = [out of 1000?] chance of spawning every '30 frames' or something. Would roll that chance 30 times, and if it hits it and does spawn, idles and waits for 30 frames to pass, then repeats. but only doing this while it's on screen (or maybe near the screen).)

Eitherway, thank you as always for your answers noxid. You're like some walking, breathing lexicon. :awesomeface:

Also, one other quick question...

How many bytes are reserved for equipment bit flags?
 
Feb 25, 2011 at 7:10 PM
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
Pronouns: he/him
Alright, let's see what we have here..

0x419055 - Change that to an 0xEB (basically a JE to JMP) and that *should* allow collisions during TSC events always. In order to have it say, able to be toggled would require a more creative solution (Maybe change the address to refer to a particular flag, you should be able to calculate that yourself based on
0049DDA0 - Start of Flag Data)

Equip flags are 32 bits, but you probably can't represent that high a number in standard TSC (Although OOB digits can get you a bit more)

I am always leery of using entity ID because what that really should say is Flag ID. It's related to appearifying or dissappearing an entity with flags of course, but if you're sure you'll never need that and also that you'll never call <DNP on the entity then I guess it could be used safely. A problem with using entity # is that you essentially lose the ability to <ANP it, so it would have to always be turned on and since you're taking the ID as well you can't have it not show up if some condition is met.

The actual act of making it spawn an entity in a certain interval of time with those parameters is actually quite simple though.
 
Feb 25, 2011 at 7:53 PM
Been here way too long...
"Big Joe Tire and Battery Restaurant! Opening Soon! Eat at Big Joes!"
Join Date: Sep 16, 2009
Location:
Posts: 519
If you die while tsc is running, does it run the death event?
 
Feb 25, 2011 at 7:55 PM
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
Pronouns: he/him
I believe I've tested this before and if memory serves, calling a TSC event while in the context of another event does work. Basically, it'd be like jamming an <EVEXXXX into the TSC right at the moment you died.
 
Feb 25, 2011 at 7:56 PM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Yes.

An example would be the "tetris" event in my mod.
 
Feb 25, 2011 at 11:53 PM
Senior Member
"Huzzah!"
Join Date: Feb 18, 2011
Location:
Posts: 210
putting a life pot in a closed chest.
how the hell do you do that? ive tried so many times...
im using CaveEditor...
serious problem here..
 
Feb 26, 2011 at 1:50 AM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Entity 0200 is the chest (closed), and entity 0201 is the chest (open). You'll want to setup a flag so only one appears at a time.

Code:
#0200
<PRI<SOU0022<CNP0200:0021:0000
<MSGOpened the treasure chest.<NOD<GIT1015<IT+0015<CLR
<CMU0010Got a =Life Pot=!<WAI0160<NOD<RMU<END
#0201
<EVE0001<END

<GIT1015 displays the life pot image in the window, and
<IT+0015 actually gives the player the item.
 
Feb 26, 2011 at 1:53 AM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Dubby said:
Code:
#0200
<PRI<SOU0022<CNP0200:0021:0000
<MSGOpened the treasure chest.<NOD<GIT1015<IT+0015<CLR
<CMU0010Got a =Life Pot=!<WAI0160<NOD<RMU<END
#0201
<EVE0001<END

Just a note, that you don't need the <END after <EVE0001, since the script will never reach it after going to event 1.
 
Feb 26, 2011 at 2:14 AM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
I'm quite aware of that, but I don't fully trust label systems.


Also, question:

Are the little bats that hover around Orangebell independent of Orangebell, or are they part of the same function? Reason is, I need bats that will attack/chase the player but don't drop exp (and there's no room to edit one of the existing bats)
 
Feb 26, 2011 at 3:06 PM
The Preacher
"Wacka-Wacka-Wacka-Wacka-Wacka-Wacka-Wacka-Wacka-BLEIUP"
Join Date: Feb 20, 2011
Location: lost in translation
Posts: 336
Age: 32
Pronouns: he/him
Hi.
I'm currently in a sprite editing of the Spur with OllyDbg, and I wondered where its framerects, especially at max lvl, were? I can't find them, I guess they're not in the main fonction.
 
Back
Top