News:

11 March 2016 - Forum Rules

Main Menu

Solstice hack&stuff (Looking for beta testers!)

Started by JP32, September 10, 2022, 05:52:29 PM

Previous topic - Next topic

JP32

For beta testing, read my latest post below.

So I am posting this so that this doesn't end up as my abandoned project no.715517 and that it might have some chance of getting finished some day, for once Im taking this as longass project so dont expect final release anytime soon.



So lets start from the beginning, around half year ago I requested solstice disassembly from Cyneprepou4uk, and now I finally got time to focus on the this(lets just cut long story to short ;D ).



Before the disassembly I did figure out my own how the game works, and did my documentation of the room data and some other things, now with the disassembly I have a lot more freedom and MUCH easier way to work with this, as I dont have to touch hex editor at all, without the disassembly none of this would have been possible.



Heres screenshot how I currently do things, first I design the room with TILED, take the block coordinates from it and transfer them to notepad++/disassembly, this helps a lot more than you'd think even when I have to input some stuff manually, I dont mind it really as its in very readable format on the disassembly/notepad++, for most part I can just copy&paste which takes 0.5seconds anyway.



And of course the game is quite PITA how the rooms are linked with each other(to put it simply&short), so the easiest way to plan things out was to just make (whole) map with grid paper, now there are probably million other ways I could have done same but this was easiest and quickest IMO, and it gives me excuse not to stare screen lol. But anyway this helps a lot in the long run.



But anyway, for most part things have gone smoothly, other than having to define tiles for each block manually on some of the more complex rooms but I think I have ranted more than enough for now.

My current progress:
Rooms fully designed&done/playable: 20/252
Rooms planned out on paper: ~70/252



Those numbers are probably very misleading since some rooms takes 1second to make, while some more complex ones takes me few days to make, as the current area I just finished has very little-to-none "filter" rooms with nothing on them, and of course anything can happen and change over the time or something like that idk.

Anyway I hope that made some sense, I'll post more stuff weekly as I dont want to spoil everything at once.  :beer:

JP32

Has it been week already? Time flies fast.



Anyway for the next "area" this time I deiced to make the whole area at once, just the empty rooms first to have all of them linked to each other and then start to fill the rooms with stuff, with my planning it went smoothly and I think I use this method instead of my previous one where I just made one room 100% at one time, as if the rooms aren't linked properly it can mess the in-game map up which can be pain to fix as resizing rooms afterwards is not easy, depending if there are other rooms next to it, as the rooms cant overlap with each other. They can actually and it doesn't seem to cause problems, but it messes up the map, its actually quite interesting to watch how the game tires automatically to fix it, but it can maybe cause some issues in the long run so if I run into overlapping issues I just fix them right away.



Outside of this hack, I am thinking of commenting out the original games disassembly, at least the room data part and some other parts I already did on my documentation, which should make the disassembly much more readable, like you can see on the 3rd picture of my first post. At this point I understand the room data format more or less fully and I really should take my time to write it all down at some point.



Rooms inserted: 40/252
Rooms 100% done: ~24/252
Rooms planned out on paper: ~70/252

These numbers are still misleading, since the smaller and simple rooms takes very little time to finish and large and complex rooms takes more, but what really takes longer is to came up with ideas for them, as some of them are too hard for these early rooms.

Anyway, thanks for reading my (drunken) rant and enjoy?  :beer:

Grimlock

Coming up with good level designs from scratch can be a challenge for sure. Especially when your goal is to give each one a bit of its own unique character. I just finished remaking Metroid 1 and reimagining all the rooms into unique versions, some with elements represented in the original rooms, others that were just repeats completely done in a different style while remaining true to the theme of the area. Sometimes you just have to pass on a certain part for a bit and work on something else while you wait for some kind of inspiration. Your situation though probably requires a lot of pre planning and consideration to design the obstacles.

JP32



Rooms inserted: 40/252
Rooms 100% done: ~34/252
Rooms planned out on paper: ~70/252

Another week gone, another update. I've been filling up this current area and despise not working on this every day I got a lot more done than I thought.

Quote from: Grimlock on September 24, 2022, 01:37:01 AMComing up with good level designs from scratch can be a challenge for sure. Especially when your goal is to give each one a bit of its own unique character. I just finished remaking Metroid 1 and reimagining all the rooms into unique versions, some with elements represented in the original rooms, others that were just repeats completely done in a different style while remaining true to the theme of the area. Sometimes you just have to pass on a certain part for a bit and work on something else while you wait for some kind of inspiration. Your situation though probably requires a lot of pre planning and consideration to design the obstacles.

Yeah it takes a lot of planning and thinking ahead, especially since there can be upto 6 ways to enter room(exits on all four walls, on ceiling and floor + in theory teleporter too, Im not sure if thats even possible, maybe I should test that in the next area.. >:D ) anyway I need to make sure room can be traveled across all exits(unless its intentional one way), and then theres also the magic boots, keys unlocking paths/sprites... so I have to check that theres no softlocks and that the rooms flows nicely. The item disposition is also another concern, but moving/removing/adding them around isn't that hard I guess.

But yeah I dont know what else to write, things have gone more or less smoothly, see ya next week or something.

JP32




Rooms inserted: 40/252
Rooms 100% done: 40/252
Rooms planned out on paper: ~70/252

Aand with that I have the first two areas of the game done, I also edited heavily some of the previous rooms.
Also I edited players palette to match up with the intro, like I did with my palette inconsistencies fix patch, the screenshots are little old.


I also went and commented out the disassembly little bit;
-Palette locations(player etc)
-Parts that deals with teleporters/keys/detonators/etc
I also found part that handles detonators state so that they stay triggered when you exit and re-enter the same room, and blasting bombs disappearing(this is something I haven't documented before)
-Gameplay demo stuff, like starting rooms and input data
Interestingly, seems like there is one unused one, that was supposed to start in room ID F7(this one), but it seems like its input data is removed and the pointer points to same one as first one.
And in bank02 where the text is located, theres also another implication that the title-screen loop had two more text pages, but the pointer points to first one, and the second one has no data in it(which I think is the cause for the little flash in the title screen loop).

I did these in advance as at some point I need to edit those anyway, and for temporally solution for the gameplay demo as due to edited rooms the inputs dont match up so its little messed up(and at this point I dont want to mess around with it since room layouts can change over the time), so now it just fades in/out between the title screen and the intro credits.


So anyway, I was thinking of having little beta test for now, as I'd like to have some feedback of the rooms I've made so far, as currently I have no idea if its any good or not.

If you are interest in, send me an PM, this is closed beta but anyone who wants can enter.

Only requirement is that you:
1. Play it
2. Sent any thoughts or comments about it afterwards

I'll probably start sending the download links tomorrow.

And thats all for now :beer:

JP32

I'll be honest, I was busy whole week and got nothing done.

Well thats a lie, I did experiment with the detonator stuff and found out some more unused stuff, nothing major.

So basically there is table that deals with what detonators and that one key does when you use them, it can make sprite or sprites invisible or visible(the exit one is its own separate table).
Now the original game only hides either sprite slot 1 or 2 or slots 2&3, but its possible to make any sprite slot combination to appear/disappear, or ALL of them, that one room at the beginning actually just hides two of them, not all of them, since there is only two sprites in there, so if you add sprite there its gonna be visible.

So out of three that game uses($01, $02, $03) 5 are unused($00, $04 to $07).

Also its worth noting, that one room that has its sprites hidden until you have 5 staff pieces is its own separate check for some reason, the game specifically checks if you are in that specif room WITH 5 staff pieces.

So basically there are two tables, first one handles what exits detonator/key hides and another makes sprites disappear/appear. How fancy.

I'll make these findings and my disassembly commentary available at some point, there are more stuff I want to test and comment before that.


Aaand Im still looking for beta testers, dont be shy, PM me :-* .

JP32


(WIP)

Im back bit***s! I took little break and worked on other stuff, has it really been month since last update already?? Time flies fast.

Anyway, since last time I wrote down all possible values for the exits, so basically first bit determines if theres exit on ceiling or on the floor, or both. Second bit determines on which side the exit is, and how many, the order is bit random for some reason. Im not sure why I only just recently did that lol.

Anyway, the next area makes heavy use of the original games ability to have rooms on all sides and above/below too, I dont want to spoil it yet though  ;) .

JP32




Aaand its another sunday, and just when I finally have some free time, flu strikes and Im bedridden most of it :( . Anyway during the week I finished up the next areas layout, and started to fill up the rooms now that I feel a lot better.

This area doubled as a little experiment to see how the game handles "floors", as in rooms below/above the current floor, well its hard to explain on paper, but for example, on floor 1, if you go up three floors, then on that floor more one room into any direction and from there go down back to floor 1(not by backtracking), the minimap doesn't render the rooms that should surround it, but if you backtrack the minimap works as it should, but doesn't show the rooms that should be there even if they are "physically" next to each other and you have already visited. Did that make sense? probably not. Since the games minimap doesn't show it as it should on paper, I'll just spoil it;
Spoiler
This current area is 3x3x3, like rubik's cube that you go around. Its also first area with key and teleporter too to make it even more confusing.
[close]

JP32



This week I didnt get much done as I was still feeling sick until Wednesday and even then I got distracted from this hack lol. I got couple more rooms done and documented the disassembly more.

For future, I was thinking of following timeline:
1. Finish up filling up this area and polish out some issues by end of this year for SMWcentrals Creativity Convention event.
2. Release the first public demo around early next year.
3. Finally sit down and clean up my documentation, and comment out the disassembly, at least the parts Im able to. I'll probably start this early if I finish up with this current area before end of December.
(Mostly likely little break in-between)
4. Plan out the next few areas on paper and then continue on with this hack.

Anyway, see ya' lurkers again next Sunday!