Allegro.cc - Online Community
Post Reply

Allegro.cc Forums » Off-Topic Ordeals » [KrampusHack 2018] Fashionista: BugSquasher's curse

rss feed Print
[KrampusHack 2018] Fashionista: BugSquasher's curse
amarillion
Member #940
January 2001
avatar

Dressing up is a lot of work for Ayumi. She owns a beautiful walk-in closet with lots of clothes, but it's a dangerous mess of boxes stacked sky-high and vicious spiders are ready to attack!

Help Ayumi with the morning chore of picking the right clothes to wear for the day. But do make sure you pick a matching set of clothes!

Here is my entry for Krampushack 2018, which was made for BugSquasher and fully implements his wishlist.

{"name":"611821","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/4\/e\/4ea83c5bcf15c132020b115e3b0f3af4.png","w":640,"h":508,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/4\/e\/4ea83c5bcf15c132020b115e3b0f3af4"}611821
{"name":"611822","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/8\/e\/8ed1b1f3df82f9351509fa0b54d319b8.png","w":640,"h":508,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/8\/e\/8ed1b1f3df82f9351509fa0b54d319b8"}611822
{"name":"611823","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/2\/d\/2d540d523b775b2145189d03b01ab1e1.png","w":640,"h":508,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/2\/d\/2d540d523b775b2145189d03b01ab1e1"}611823

Windows Binary
Windows installer
Sources and Linux Static-linked Binary
Competition logs
Gameplay Video

Changes from the original

The original game was made for Speedhack 2009. Here are the additions in the new version:

  • As per the wishlist, I added a "twirl" effect using OpenGl shaders, everytime you leave a level (either by dying or by winning).

  • As per the wishlist, I added a light switch mechanic. There are two levels that use this mechanic. The light doesn't hurt or stop you per se, but when the light is off, you can't see the dangerous spiders lurking beneath. (It might make an interesting speedrunner challenge to finish the level without turning on the lights) The lights cast shadows that are encoded in a tilemap layer.

  • I also tuned all the levels to be better balanced. Here is the level design philosophy as I explain in my log:

Quote:

the idea has always been that you have to pick matching clothes. In the original 2009 game, a match between two items of clothing was graded on a scale between 0 and 10. This meant that matching wasn't very absolute. You would usually end up with a mediocre matching score, without an obvious recourse to improve it (well, regardless of your fashion sense). Combined with the fact that clothes were more or less placed randomly in the levels, meant that the matching system didn't really contribute much to the game experience.

I've changed all that. Firstly, instead of having 4x6 pieces of clothing that all match to varying degrees, there are now 4 outfits each with 4 items. Either you selected a complete outfit, or not. It's a binary choice, and the outfits are distinct enough that it hopefully should be obvious how to improve your score and get that extra star.

I now also assign specific items of clothing to the level maps. I've made deliberate choices about which clothes you can find in each map. For some maps I could make two routes: an easy one that lets you finish a level with a bad outfit, and a hard one that lets you get the full score.

Fashionisa was loosely based on Supaplex, a very addictive and very hard old DOS game. The game was so hard that you would often get stuck for days if not weeks on a particular level (until you figured out how to hack the save files with a hex editor, but that's a different story). The clothing system gives you to find an easy way out of a hard level, making it far less likely that you get stuck completely. This way the outfit system is true addition to the game rather than just a gimmick.

Further additions for the Krampushack 2018 edition:

  • Completely re-drawn all Ayumi's outfits from scratch, at a much higher resolution.

  • Added one completely new level

  • Made the stars / scoring system easier to understand.

  • Replaced my custom binary level format with the json-based tiled level format.

Post competition fixes:

  • fixed clothes metadata, so you can't wear two pairs of shoes anymore

  • fixed static compilation on linux

  • downgraded to GLSL version 130, to increase compatibility

--
Martijn van Iersel | My Blog | Sin & Cos | Tegel tilemap editor | TINS 2017

Doctor Cop
Member #16,833
April 2018
avatar

Great game had fun playing it.
levels are tricky and I really appreciate that you even provided the installer.

Edgar Reynaldo
Member #8,592
May 2007
avatar

I refuse to play until I have something to show for my own secret santa...

but it looks awesome...

GullRaDriel
Member #3,861
September 2003
avatar

I played it and it clearly reminded me the old good supaplex, and it's a first good thing ^^
The clothing part is implemented, though I would have loved that the bonus do not stay displayed when collected. I couldn't take the pipe tube either.

Nice game :-)

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

Elias
Member #358
May 2000

I'm at the -- -- -- level, so still have this one and two more to beat!

--
"Either help out or stop whining" - Evert

Doctor Cop
Member #16,833
April 2018
avatar

It was fun, there should be a progress save system.
every time I have to do it again which ultimately becomes tiring.

amarillion
Member #940
January 2001
avatar

It was fun, there should be a progress save system.
every time I have to do it again which ultimately becomes tiring.

It does save your progress! It should save a file in %appdata%/helixsoft.nl/Fashionista/fashionista.cfg. Does this file not exist for you? Do others have the same problem?

The clothing part is implemented, though I would have loved that the bonus do not stay displayed when collected. I couldn't take the pipe tube either.

Do you mean the green boxes should disappear? Maybe, but the trouble is... if the clothes / boxes disappear, you cannot undo a mistake if you accidentally pick up the wrong clothes. Don't you think that is a problem?

--
Martijn van Iersel | My Blog | Sin & Cos | Tegel tilemap editor | TINS 2017

GullRaDriel
Member #3,861
September 2003
avatar

I mean the collected item should disappear from the map.

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

SiegeLord
Member #7,827
October 2006
avatar

Nice, good memories of Supaplex. I also had an issue with the progress being saved after getting a bit into the game (I unlocked the `-- -- --` level). I tried it again, and it did save it though if I quit after the first level.

Also I routinely had crashes, which I suspect are caused by spiders wandering outside the level (possible if you blow up the outer wall).

I was also confused by the clothing not disappearing, but I now understand there's an additional sub-game here (I guess that's how you get the second star?). Just need to read the readme I guess :P (EDIT: Or your post, ;D...).

One last thing, on my computer things looked stretched horizontally when ran in fullscreen. Perhaps faulty scaling algorithm?

But despite these issues, it's really fun and I liked the light mechanic (I hacked the levels to unlock it early since my progress didn't save the first time).

EDIT2: Here's an idea for what to do with the items. What if when picking it up, you replaced it with the item you were currently wearing?

"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18
[SiegeLord's Abode][Codes]:[DAllegro5]:[RustAllegro]

Doctor Cop
Member #16,833
April 2018
avatar

SiegeLord said:

But despite these issues, it's really fun and I liked the light mechanic (I hacked the levels to unlock it early since my progress didn't save the first time).

I was wondering about how the actual hacking is done. The courses I found on Internet were almost about simple site hacking but they don't teach how it actually works, how the game actually goes and if someone were to hack on windows, how to do it?

If you know any video courses or online blogs please tell me.

relpatseht
Member #5,034
September 2004
avatar

? There's no magic terminal command or anything. It's just exploiting flaws in a program. Whether that be by dumping machine code into a processes address space via a buffer overrun, executing some query via improperly escaped URL, calling the maintenance man and convincing him to read you the password taped to the back of sometimes monitor, etc, etc.

SiegeLord
Member #7,827
October 2006
avatar

I was wondering about how the actual hacking is done.

Err... I just found the files the levels were stored in and just switched the filenames for the level I wanted to be first, and the actual first level.

I could have just as easily hex-edited the filenames inside the exe file, but since amarillion didn't add any content validation, that was unnecessary, haha.

"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18
[SiegeLord's Abode][Codes]:[DAllegro5]:[RustAllegro]

amarillion
Member #940
January 2001
avatar

And since I published the source code, you could have edited the source code and recompiled but that was probably more work than what Siegelord did.

Or you could have edited the save file manually. The format is not too hard to understand:

From ~/.config/helixsoft.nl/Fashionista/fashionista.cfg

[sh09]
level_0_score=1095
level_1_score=1230
level_2_score=1135
level_3_score=1230
level_4_score=1235
level_5_score=1250
level_6_score=1055
level_7_score=1001
level_8_score=1001
stars=21
[twist]
windowed=1

Hacking is nothing mysterious. It's just means: using clever tricks to make some technology do what you want.

--
Martijn van Iersel | My Blog | Sin & Cos | Tegel tilemap editor | TINS 2017

Doctor Cop
Member #16,833
April 2018
avatar

I'm using Windows 7 and I can't find the config folder.

What should I do?

So, is there an actual hacking course which would teach me how to do it?
Or is this just about having deep knowledge of Operation System and processor.

Edgar Reynaldo
Member #8,592
May 2007
avatar

Ever heard the term script kiddie? :P

What do you want to learn how to hack so bad for? Learn how to program first. Once you understand what programs (and computers) do, then you can try to modify their behavior.

amarillion
Member #940
January 2001
avatar

I'm using Windows 7 and I can't find the config folder.

The example I gave is for linux. On windows, it should be somewhere in the %appdata% folder. I don't remember exactly where, but if you enter %appdata% in a file system explorer and browse around you may be able to find it.

--
Martijn van Iersel | My Blog | Sin & Cos | Tegel tilemap editor | TINS 2017

Doctor Cop
Member #16,833
April 2018
avatar

Thanks Amarillion, I found it inside AppData\Roaming\helixsoft.nl\Fashionista

<contents>
[twist]
windowed=0

[sh09]
level_0_score=1095
level_1_score=2000
level_2_score=2000
level_3_score=2000
level_4_score=2000
level_5_score=2000
level_6_score=2000
level_7_score=2000
level_8_score=2000
stars=21
</contents>

There were too many assertions and after a few retries the player sprite automatically started to move upwards.

Edgar Reynaldo
Member #8,592
May 2007
avatar

Great game amarillion, and congrats on finishing it on time.

My present is great, everything I asked for.

My own Krampus game needs a lot of work before I would consider it playable, or even a demo.

Just wanted to make sure you knew I played it before the thread locked. ;)

Post Reply
Go to: