<- 1  -   of 75 ->
^^
vv
List results:
Search options:
Use \ before commas in usernames
It's not exactly a hard thing to come up with when it's basically the only way to read the file, lol.
what I find strange is the fact that they pass the character as an s32 rather than a wchar_t.
Edit history:
DJGrenola: 2016-03-13 09:46:02 am
DJGrenola: 2016-03-13 09:44:41 am
has anyone seen anything in STRG that allows you to set the colour of a font's outline?

EDIT: nm, I see it in the DOL. 'outline-color=' at 0x3ea77e (0-00).
CGuiBackground::CGuiBackground(const CGuiWidget::CGuiWidgetParms&, float, float,
                              const CVector3f&, EGuiTextureClampModeHorz, EGuiTextureClampModeVert,
                              CGuiStaticImage::EMaterialType, unsigned int, unsigned int,
                              rstl::vector<float>, bool)

Critique for Retro's GuiSys author: NEVER pass a vector by value, especially when it's CodeWarrior allocating the stack storage
outlines ahoy


attachment:
Grenola, that is sweet!

PWE progress report: it's basically at the point where I can spawn whatever objects I want and set up their properties, link them to other objects, etc. as well as modifying existing objects. The main thing still left to do before all the pre-release features are finished is creating/deleting objects. Creating is mostly done after a few more fixes and deleting is half implemented. When that's done there are a few bugs that need fixing and a few new convenience features I want to look into implementing, then I should be ready to release... I will probably make a new thread when I reach that point.
Edit history:
Antidote: 2016-03-14 05:28:56 am
So, I decided to look into how saves are written to the memory card and found something out that makes sense in hindsight:
Save are encrypted, the overall logic is pretty straight forward, but difficult to understand at a glance, as a matter of fact I'm still not 100% certain on what's happening yet, but cleaning up the code should help clear up my confusion.
https://gist.github.com/Antidote/649ebd8c16ab1f817324

Took me about an hour to RE then test, but it SEEMS to work fine (albeit with incorrect endianness)
Edit history:
Aruki: 2016-03-17 08:41:41 am
All major features are finished, need to add some minor features/fix some bugs/clean a few things up and I will finally be release-ready. If I had to guess I'd say it should be good to go within a week.

If anyone happens to be around right now I'm going to stream myself screwing around with MP1 and testing the editor on my Twitch channel for a couple hours.

edit: stream is over now
Edit history:
Antidote: 2016-03-19 02:37:40 pm
So, last night I decided to take a look at the save again, and reverse engineered the bitstream completely and properly (the implementation above has a few bugs)

And here is the result!
https://gist.github.com/Antidote/5837d7eff6f05087c117

Edit:
Fun fact: the game actually has a power up that's not stored in the save, I wonder what it is.
The FONT utility is done; separate thread:

https://m2k2.taigaforum.com/post/fontimus_prime_v0.1.html
I added some really useful copy/paste and clone functionality to the editor; as a test I tried copy pasting an entire cinematic to a new room. It worked perfectly and it's super easy to do in the editor. Right click pickup, select all connected objects, copy, load new area, paste. This is the result: https://twitter.com/Paraxade0/status/711665355244986368
looking good!
That unstored PowerUp is "Health Pickup" btw!
I've released PWE! Release thread is here
Does anyone know if there's a way to automate creating a ton of wiki pages? I'd like to have a page up for each script object type in each game, now that PWE is out and anyone can download the editor and help us figure out what properties do. I could easily generate the page source for each of them, but I don't know of a way to automatically push them to the wiki and I don't want to have to manually create every page with the generated source.
I have automated login working, so if you flow me the page sources you want inserting, I can probably make it happen.
west furnace access why
So I've figured out what the two unknown long type values for counter objects do. One of them is the master counter itself, while the other is some sort of subtraction counter type deal where it takes the value it is set to and subtracts that from the master counter. For example, the E.I 2 fight's counter for the holes we need to destroy is set to 11 by default, while the subtraction counter is set to 0. so the game waits until 11 have been destroyed, then activates E.I. 3. If the counter is changed to say, 6 instead of 11, then we only need to kill 6 for the next phase to start. Now, if we set the subtraction counter to 2 then we only need to kill 4 of the holes. Why this subtraction counter exists is beyond me, but it's there.
There two values are below the unknown value set to 3, they go subtraction counter, master counter in that order if anyone was interested in updating the names on their PWE.
Edit history:
Aruki: 2016-03-24 08:59:43 pm
oh, those values are marked in the MP1 Counter template. The first long is the starting value, and the second long is the max value. The counter's initial value is the first long, and then it enters the MaxReached state when it hits the number set as the max in the properties.
Edit history:
Gunert: 2016-03-24 09:03:37 pm
west furnace access why
Well here I though I had made some new discovery >_<. Oh well.
Also, I've noticed like every object in echoes has an unkown value always set to 3, any clue what that might be at all?
MP2+ have IDs for every property while MP1 doesn't. So any changes you make on the MP2 templates will be applied to other instances of that property ID in MP2, plus in MP3 and DKCR. But since MP1 doesn't have the IDs there's no way to identify the same property in MP1, which means the MP1 templates aren't synced with the rest and there's some properties that are marked in the MP1 templates that aren't marked in the MP2 templates (and vice versa).

Quote from Gunert:
Also, I've noticed like every object in echoes has an unkown value always set to 3, any clue what that might be at all?


no clue what it is, it doesn't do anything as far as I can tell. Best guess is it's something their editor used but isn't used by the game.
Edit history:
Gunert: 2016-03-24 10:07:41 pm
west furnace access why
well, I figured out 3 unknown values for the camera shaker object. unknown value 1 effects horizontal shake, unknown 5 effects vertical shake and unknown 7 effects the length of camera shaking. strangely, unknown 6 has values assigned to it equal to the vertical shake, but changing it doesn't seem to do anything. values 2,3 and 4 also don't seem to do anything.
I think those are new, don't think anyone has looked into CameraShaker yet :P Can you clarify which game you're talking about and provide the ID path of the properties? You can find it in the edit template dialog after right clicking the property name
Edit history:
Gunert: 2016-03-24 10:34:10 pm
west furnace access why
oh right, the game is prime one, I.D path for horizontal shake (unknown value 1) is 0x00000001. I.D. path for vertical shake (unknown 5) is 0x00000005 and I.D. path for shake length (unknown 7) is 0x00000007
Also, someone made a site for all of this stuff already right? Is there a link for that somewhere?
we have the wiki but it doesn't have pages for all this stuff yet.
I made a little mockup of what a script object page might look like. Pretend the Script Object and Script Struct headers are separate pages. Does anyone have any feedback on anything? This needs to be absolutely perfect before we go ahead with the page generation. I don't want to have to go update 1000 pages if we decide to change how these pages should be laid out. http://www.metroid2002.com/retromodding/wiki/User:Parax0/Object_Page#Script_Object