Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[V26] SnowStorm Fix

Status
Not open for further replies.
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
Hi! :D

Yes, I started fixing the SnowStorm shockwave version (no, the flash one is preeetty bad).
But, don't get too much Hype because it's very bugged right now and in my first post (you can find here) I wrote that without reverse engineering the CCT files, we can't keep the Bytecode inside the CST files. What does that mean? Simply it means it's impossible to study the Lingo script (even with ProjectorRays) because they get deleted when a CCT file gets converted to CST.

By the way, I picked Holograph Emu Vista4life's Edit.

Now I will explain how I fixed these parts of SnowStorm.


  • CREATE A GAME TOOL (fixed)

Do you remember when in every v26 retro, it was impossible to create a SnowStorm game?
Well, I saw how the Server was handling the data and everytime a game was created, the server would process the data in wrong parameters.

So I thought: "Why BattleBall tool works? They shares the same structure..." and in fact, SnowStorm and BattleBall shares like 40% of functions.
Then, what was the error? As I have already said, the server would process the corrected data into wrong parameters. In fact, there is a little functions called "CreateGame" that BattleBall tool uses. The problem was the parameters: they were: Owner, Name, MapID, teamAmount, enabledPowerups.
Yup, enabledPowerups was the first problem: when this paramater gets a nice "null" (so no powerups selected), it bugs the SnowStorm tool and even the BattleBall one (lol).
So, I added a new function called "CreateGameSS" and it doesn't use the enabledPowerups parameter (it doesn't need one).

The problem was solved? Errr.. nope.
The packets were totally EMPTY.
I studied (again) how BB tool handles the packets and I found that it uses a String type function called "getCreateGameSettings"... the name should explain everything.
So what was the problem? Simply the server wouldn't receive any data and the SS tool would simply block. I added the missing Settings and... miracle!
ApsFpER - [V26] SnowStorm Fix - RaGEZONE Forums

The other settings work without any problem because they share the same functions with BattleBall tool. The timer is corrected, in fact without putting a nice Switch function the time was just 1, 2 or 3 seconds (respectively 2 mins, 3 mins and 5 mins options).

Nice uh? But the real problems are starting now.


  • Loading the Arenas

YUP, this is the first problem... loading the f*ing arenas.
I have already fixed some problems, but still there are lot that need to be fixed.

You should know that SnowStorm has 7 pretty arenas, Arctic Island, Algid River, Polar Labyrinth, Frosty Forest and etc.
Soo... where's the problem? In the CCT files.
In another thread, I said that SnowStorm CCT files are incomplete and I can't find any completed CCT files (v28 is worse).
The files arefor v26 are:
hh_game_snowwar: I think this is the main file... I can't convert it to CST (recover-cct crashes :D). I tried with offzip and I got some .DAT files. I analyzed them and I think this CCT file just handles SnowStorm main scripts, I think they're Lingo scripts (btw I extracted the SS game sounds (even for BB), I can upload somewhere if you want).
hh_game_snowwar_ui: just SS UI (like Reward Window coords).
hh_game_snowwar_room: this has everything related to the Lobby and the arenas, but this is the most incomplete file. Fortunately there are all map items of the all arenas, so it's possible to manually construct the arenas (you can even make custom arenas).
In fact, in my first thread, I posted a screenshot with an empty arena. Today I finished the first structure data for Arena 1 (Arctic Island), you can see a screenshot in the spoiler:
0f5UYrt - [V26] SnowStorm Fix - RaGEZONE Forums


I know, some items are misplaced (like the snow blocks), I will fix them ;P.

Building an arena is pretty time consuming because you need to know the items coordinates.
So, I manually built the arena, got coords and then I wrote the coords inside the Field File.
It took me 2 days.

With patience I will build the other arenas... but now I'm focused on other problems: UI loading and adding players.
In the screen, you can see there's still the main user interface. I tried to study how BB loads its UI, but I think the CCTs handle this. Players don't get added to the map and I really don't know why... maybe these two problems are connected. I have a couple theories and I will try when I'll have some time (University is starting this week ;V).

Before I finish, I have a request:
If you have the Complete SnowStorm v26 files, can you give them to the community?
There are even v28 CCTs (totally empty), but if you have a V28+ Pack with these files: hh_ig_snowwar_room, hh_ig_snowwar_ui and hh_ig_gamesys they are important, they use the Joystick button and not the lobby (they could even have the complete arenas).

So, it finishes here. When I'll have news, I'll report them here.
See ya!

PS: Sorry if there are some grammar errors >_>'
 

Attachments

You must be registered for see attachments list
Last edited:
Initiate Mage
Joined
Aug 22, 2016
Messages
19
Reaction score
4
This is amazing!!!.
Im playing battleball in , but snowstorm isn't coded in holograph.
 
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
I found out why players and UI don't appear in the map.

When I opened "hh_game_snowwar_room" for the first time, I found just one arena .room file called "snowwar_arena_0".
I thought it was an error, so I changed it to "snowwar_arena_1" and map would load fine without UI/Players.

I thought what would happen if I tried to call a nonexistent BattleBall map. Result? The same bug: no UI, no players.
So I changed again the snowstorm map name into the original one and now the client crashes with a Script_Error.

EDIT: The error generates from _SetMinigameHandler with "Index is not positive". mhmh

EDIT 2: Still the same error, but it seems with 2 players, one of them can load the arena ;c
oMUH5tB - [V26] SnowStorm Fix - RaGEZONE Forums

Seeing the user head on the UI, it seems players don't get loaded properly... Geez. (And, still the old navigator button, too old dcrs?)
 

Attachments

You must be registered for see attachments list
Last edited:
Experienced Elementalist
Joined
Apr 20, 2007
Messages
235
Reaction score
300
Nice work!

I've been able to load an arena with the proper SnowStorm UI without crashing the game but I couldn't get the actual game messages to work.

Unlike BattleBall, SnowStorm game messages require a checksum in order to be processed and if the calculated checksum doesn't match with the one in the packet, the message will be ignored.

I was never able to figure out how the checksum was calculated, I hope you'll be able to!
 
Last edited:
Joined
Oct 26, 2012
Messages
2,357
Reaction score
1,086
Looks great! Though it's just the - and don't get me wrong, I know it's already more than before plus it's really good - the model. I mean, the model and the game tool compared to the game itself and all the packets is nothing.

Yet, I cannot wait to see more updates.
 
Joined
Aug 10, 2011
Messages
7,401
Reaction score
3,299
Nice work!

I've been able to load an arena with the proper SnowStorm UI without crashing the game but I couldn't get the actual game messages to work.

Unlike BattleBall, SnowStorm game messages require a checksum in order to be processed and if the calculated checksum doesn't match with the one in the packet, the message will be ignored.

I was never able to figure out how the checksum was calculated, I hope you'll be able to!

If it helps, in flash it calculates the checksum over the parameters in the objects. Unsure how the packets are processed in shockwave.
 
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
Unfortunately I can't get past this boring "Index is not positive" error.
I even tried to see what is _SetMinigameHandler inside hh_game_snowwar (after I decompressed it with offzip) without results.

I'm thinking that the server is ignoring the packet, as @lab-hotel said.
But, the thing I'm really curious is why the game still doesn't add players. Perhaps this is the reason why the game continuosly crashes.

If someone is interested, the client gives me these fancy client_errors
00:00:00 -getInt-Variable Container Class-Variable not found: "connection.retry.delay";00:00:00 -getInt-Variable Container Class-Variable not found: "connection.retry.count";00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 81 / Info;00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 1090 / Info;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 124 / Info;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -getInt-Variable Container Class-Variable not found: "balloons.rightmargin";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;

Funny thing: you can find balloons.rightmargin inside hh_game_bb and hh_game_snowwar. I think is about the "Chat balloons"...
 
Initiate Mage
Joined
Jul 2, 2016
Messages
98
Reaction score
40
Unfortunately I can't get past this boring "Index is not positive" error.
I even tried to see what is _SetMinigameHandler inside hh_game_snowwar (after I decompressed it with offzip) without results.

I'm thinking that the server is ignoring the packet, as @lab-hotel said.
But, the thing I'm really curious is why the game still doesn't add players. Perhaps this is the reason why the game continuosly crashes.

If someone is interested, the client gives me these fancy client_errors
00:00:00 -getInt-Variable Container Class-Variable not found: "connection.retry.delay";00:00:00 -getInt-Variable Container Class-Variable not found: "connection.retry.count";00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 81 / Info;00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 1090 / Info;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -forwardMsg-Connection Instance Class-Listener not found: 124 / Info;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -getInt-Variable Container Class-Variable not found: "balloons.rightmargin";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;

Funny thing: you can find balloons.rightmargin inside hh_game_bb and hh_game_snowwar. I think is about the "Chat balloons"...

I made Skull lake, can I give you the data of the database
AserLink - [V26] SnowStorm Fix - RaGEZONE Forums


To solve some errors connection delay and balloons rightmargin in battleball I put this in external_variables.txt

balloons.leftmargin=0
balloons.rightmargin=720
connection.retry.count=5
connection.retry.delay=2000
 
Last edited:
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
Nope, those strings didn't fix the crashes.
By the way, I often get these client errors instead:
00:00:00 -GET-Variable Container Class-Variable not found: "human.parts.sh.sit.6";00:00:00 -GET-Variable Container Class-Variable not found: "human.parts.sh.sit.7";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -showRoom-Room Interface Class-Room recording data member not found, check recording label name. Tried to find .room;00:00:00 -roomConnected-IG RoomLoader Class-Cannot showRoom: ;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -getInt-Variable Container Class-Variable not found: "balloons.rightmargin";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;

About the Arena, I'm sorry to say but it isn't good.
The arena structure is built inside hh_game_snowwar_room in a file called snowwar_arena_X.room.
You need Director and this file (and a loooot of patience).
 
Initiate Mage
Joined
Jul 2, 2016
Messages
98
Reaction score
40
Nope, those strings didn't fix the crashes.
By the way, I often get these client errors instead:
00:00:00 -GET-Variable Container Class-Variable not found: "human.parts.sh.sit.6";00:00:00 -GET-Variable Container Class-Variable not found: "human.parts.sh.sit.7";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -showRoom-Room Interface Class-Room recording data member not found, check recording label name. Tried to find .room;00:00:00 -roomConnected-IG RoomLoader Class-Cannot showRoom: ;00:00:00 -GET-Variable Container Class-Variable not found: "tracking_header";00:00:00 -sendTrackingCall-Statistics Broker Javascript Class-Tracking header not in session.;00:00:00 -getInt-Variable Container Class-Variable not found: "balloons.rightmargin";00:00:00 -GET-Text Manager Class-Text not found: key1;00:00:00 -GET-Text Manager Class-Text not found: key2...;

About the Arena, I'm sorry to say but it isn't good.
The arena structure is built inside hh_game_snowwar_room in a file called snowwar_arena_X.room.
You need Director and this file (and a loooot of patience).

About arena, that bad....

I have the same errors in battleball room, human_parts.sh 1,5,6,7, key2... class 124 not found
 
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
Strange, XZ has the exact codes used by Holograph.
What DCR are you using?
 
Initiate Mage
Joined
May 21, 2014
Messages
17
Reaction score
18
Strange, those DCRs work for me.

By the way, could you send me this db table: "cms_client_errors".
I want understand what is crashing when you play BattleBall.
 
Status
Not open for further replies.
Back
Top