Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
A jam submission

SacrificeView game page

Puzzle platformer in which your previous attempts helps your current attempt.
Submitted by lrdazrl, 4Apila — 1 hour, 27 minutes before the deadline
Add to collection

Play game

Sacrifice's itch.io page

Results

CriteriaRankScore*Raw Score
Theme#104.3684.368
Mechanics#154.2374.237
Fun#823.8423.842
Aesthetics#1074.0004.000
Music#1153.6583.658
Sound#1453.3163.316
Story#2442.7632.763

Ranked from 38 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.

How many people worked on this game total?
2

Did you use any existing assets? If so, list them below.
Parts of some script files were reused from earlier projects of ours. All art and sound assets were created by the team during the jam.

Link to your source?
https://github.com/MrAurela/GameDev.tv-Game-Jam-2022

Leave a comment

Log in with itch.io to leave a comment.

Comments

Viewing comments 13 to 1 of 33 · Previous page · First page
Submitted(+1)

The ghost mechanic is clever, it didn't always seem to work perfectly, sometimes I was waiting around and they never seemed to show up and then when they went ahead of me, sometimes they got to the puzzle too quick, even though I tried to make it so they stood on the buttons for ages before killing themselves. 
Personally I don't think it needs a tutorial, you get to your first death very quickly (although I don't think I saw a ghost the first time, but on my second death there were 2), I think there might have been a delay in the first one coming out because when the game started the music was so loud I was checking for a volume control then turning my computer volume down. So maybe don't "record" the player until they're out of the door?
Speaking of doors, I think you had to go too far into the door to trigger the next level, the first time I went up to the door and nothing happened so I went away and looked around and then I went and looked at the instructions again and really only triggered it by a fluke. 

Several people have mentioned the room with the 3 platforms. I could not solve this one. The button for the platform that goes up to the suicide spot is on the other side of the room so I could not figure out how to activate that while being on it with a different version without being able to kill myself.

I also had a problem with sometimes my jumps not registering, I thought it was that my spacebar has been used and abused testing all these jumping games (and making my own) but someone else mentioned it too when you're near the edge of a platform. If you're using " feet" collider, maybe make it a little wider, give the player a little more leeway/generosity.

I wish I'd been able to solve that room and see the rest of the game. Maybe you need to do a walkthrough video!

Developer

Thanks for playing and providing feedback. I'm glad you liked the concept.

I have to admit that there is both some design issues (played needing to use a lot of time just waiting and code problems (ghosts sometimes act weirdly) in the game. Some of the bugs I have managed to fix afterwards but unfortunately not all. Problems with jumping however should now be solved thanks to the help from Vendolis.

In level 4 (which I believe you are thinking about) the main puzzle is exactly what you had troubles with. In previous levels dying has been very easy so I tried to have this level have contrast to them by making getting to the spikes the most difficult part. It's trying to play with player expectations because so far the player has learned that everything is solved by using the ghosts. Getting to the spikes is possible to be done with only one character and as you said it is not even possible to get another character before you get to the spikes. The solution is to first move the middle platform down and then the left platform so there will be "stairs" going to the button on the left side. After getting there on needs to move the right platform and start building stairs again but this time towards the right side.

If you got to the level 4, you did not actually miss anything else than that level and the "narrative" ending level. I unfortunately did not have time to design more than 4 levels during the jam. 

Submitted(+1)

I like the cute character and the mechanics you really got a fun little game here!

Submitted(+1)

Great concept! Really good use of the ghost recording mechanic

Submitted(+1)

Thanks for the game. It was a great experience, though I got frustrated in the room with three platforms and nowhere to kill yourself (well in the top right... but I was not getting there either)

I had the same bug with getting stuck. happened both times on the left of the platform. I made screenshots of the position. There might be something with the colliders that allows it to get stuck. 

I also looked into your project and sent you a pull request on your git repo with suggested changes to make the jump check at the front and the back of the sprite. It relies on two transforms (theoretically you can just calculate them, but your sprite goes a little beyond the collider, so they might need to be a little outside of it. 

I also suggested some small changes where the project would get a bunch of Null reference exceptions when not starting from the first level and when the player is not spawned. Take a look at them if you like them. If you have questions about the suggestions, I am happy to answer them.

Anyway, it was really fun to play. Great work with it.

Developer (1 edit)

Thanks for the comment and thank you also for actually going to check the source to fix some of the bugs.

I reviewed your pull request now and it's looking good so I will probably accept it and make a new build with those fixes. There was one thing about your fixes that I wanted to ask about. What does the ? exactly do in these lines: Transform transform = FindObjectOfType<Player>()?.transform;  ? I haven't seen that syntax before but if I can guess it correctly it might become handy in the future too.

Another thing: I would like to add special thanks mention to the game credits for your help if it's okay with you? Would you prefer to be credited with you itch.io username or something else? Or of course if you, don't want me putting any mention there, that's your call.

Submitted(+1)

The object?.function() is working like a 

if(object != null) object.function();

So, it is a short form to avoid null exceptions. Esp helpful when you are unsure is something is initialized and it's not really important that it happens. But it's still a null check so it's better to avoid it if it can be avoided. 

Another suggestion I would give you is to work more with [Serializedfield] instead of searching for components. The component search is very time-consuming. If you need to search for a component, try to avoid doing it in Update and if possible, cache it in a local variable in Start or Awake. I know it's not possible in all cases.

I tried to look for the stuck issue. But I could not figure it out... it might be fixed with the two ground detectors, at least you should be able to jump in that case. I think it was partly related to the fact that you were half off the platform.

Developer (1 edit)

Yeah, I'm hoping getting stuck issue would be resolved by your fix. After thinking about it I suspect it might be related to a situation in which the character is physically colliding with the platform but the ground check claims the character to be on air applying constant downward velocity to the character which might then hinder sidewise movement.

Thanks for the explanation! It makes sense and will totally be useful to remember in the future. So would FindObjectOfType<Player>()?.transform then return null in case the object is not found?

About using FindObjects and GetComponents... I was prioritizing code writing speed over code execution speed because I had very limited time to work with the jam project. I know that they are slow but I believed this to be small scaled enough project that it wouldn't affect performance too much.

By the way, you did not answer to my last question about how would it be okay to mention you as special thanks in the game credits (and would you prefer your username or some other name to be used)?

Submitted(+1)

Oops... I missed the last part. Sure, Vendolis is the internet name that I generally use. Thanks a lot.

Yes "Transform transform = FindObjectOfType<Player>()?.transform" would result in null to be assigned and the .transform not to be executed. It is basically like the lines ends before the "?". 

And yes... yes I totally understand that time is an essential part of a Jam. I don't think anyone's code looks clean here.

Submitted(+1)

Was really impressed when I realized there was a ghost mechanic involved. That must have taken some research. You definitely put some thought into how the puzzles should unfold and they were fun to solve. Really enjoyed the visual aesthetic, it lead to a good pairing with the music.  

Id recommend having a way to skip to the next character rather than wait for awhile and killing yourself to make the next character accessible. The character movement felt a little stiff and having unreachable platforms felt a little frustrating. I also tried the game on my controller. It was great to see the movement was implemented, but I think you forgot the jump.

Well done overall!

Developer (1 edit)

Thanks for the feedback!

Someone else commented also about waiting the ghosts to be boring but they didn't have any suggestions to fix it. Could actually elaborate what you mean by skilling to the next character?

There was controller support?! That was totally unintended even for the movement. But I guess Unity has pretty universal controller systems so it might actually automatically work so that the arrow keys will have the same functionality than left stick in a controller.

Submitted(+1)

I think that you have to kill yourself is intentional. in level 4 it would be too easy if you could just switch characters. You need to make decisions when you kill yourself to give the next character enough time to do something. But I understand the frustration, I felt the same, but then also found that it would get too easy.

Submitted(+1)

Wow this was great. I don't really play a lot of 2d games. But this one felt amazing. The Player controller felt just right (not too slippery and yet not stiff, with the right amount of gravity). The game mechanic of dying and seeing your previous self is amazing. I am not sure if this is a common game mechanic, but I have never seen it before and I must say I think its amazing. Also The music choice is really fitting.

I did encounter 2 bugs:

1) not being able to move next to the moving platform (my player character could look left and right but it was stuck).  

2) My player wasn't respawning after it had died.

But you probably already know about those seeing as you mentioned it in your description. 

One thing I noticed was that when you try to jump too close to the edge of a platform that your jumps wouldn't register. (Which was what caused many of my deaths.) I feel like adding a bit of coyote time would improve this. Overall great job loved it.

Developer

Thanks for you comments and feedback!

It's really good to hear that the controlling the character felt fluent. This is something that I have previously fight with a lot but luckily this time I luckily was able to use my previous experience with that and I was pretty happy about the movement myself also. I'm also very happy to hear that you liked the game mechanic. I don't believe it to be common (as I haven't seen games like that either) but I'm almost certain that I'm not the first person on Earth to get that idea. The background music was actually composed by me so good that it worked also.

About the issues you found:
1) Were you standing on the moving platform when this happened? I have had the same issue sometimes but it does not happen every time so it's really difficult to debug!
2) This one I heard first time about when some other player commented the same. I have know idea why it happens so I cannot fix it (and anyway the jam time is already ended so I shouldn't do a lot of edits). But I added a restart button (esc) to have at least one way to recover from that issue. Even if it's not very elegant it's better than starting from the beginning.
Jumping) This is a good suggestion! I won't probably edit this game a lot anymore after the jam but I will keep this in mind when I'm working with next platformer project. 

Submitted(+1)

Played and rated.

I think the mechanic used fits well the theme. The overall look and feel of the game was great.

My only downside would be that the ghost mechanic takes a long time to setup, as we don't have control over it.

Great work :)

Developer(+1)

Thanks!

Yes, I'm aware of that in some situations the player might need to wait for the ghosts for pretty long times. That's not of course optimal for good playing experience. Unfortunately, it might be really difficult problem to fix. Maybe giving the player an option to speed up time would help a little. But I fear that it might be a problem with core mechanic itself... Well, jams are made to try new mechanics! Sometimes they just don't work as perfectly in practice as in ones own head.

Submitted(+1)

wow! I really liked the idea of the game but it had some issues with platform heights and I didn't get to finish the game because after some deaths I didn't respawn and when I refreshed nothing saved :/ other than that I loved it and it really felt good but maybe you should add some text or something to the tutorial so the player knows about the ghosts and stuff but also just figuring it out is fun so idk, thanks for the fun experience.

Developer

Thanks for the comment! Glad to hear you liked the concept but sad that you experienced issues.

Could you elaborate on the problem with the platforms?  Were you not able to jump on some platforms at all or was it just difficult? Did you notice that you can jump a bit higher by pressing the jumping button longer?

Do you remember what level you had the respawning bug with. Was it perhaps the same level than CottenEyedJoe95 mentioned in their comment?

About the lack of tutorial, I thought that the concepts in the game would be simple enough that the player could learn them by experiencing them and would not need a separate tutorial. Like in the first level (which was meant as a kind of a tutorial) the player would see ghost after dying the first time and then notice that the ghosts can also press the buttons and help the player to get trough the trap. Or that was at least my thought process. Did you feel that the game mechanics were not clear enough without written instructions?

Submitted (1 edit) (+1)

Hi there, Tried the game really like the music and art work had a really nice retro platformer feel to it. 

Only had a couple issues with the game:

1. Either the jump physic or the height of some of the platforms were too high but it many attempts to get on a couple, To the point where it was quite frustrating.

2. when I got to the 3rd or 4th Level (picture below) after spending some time getting the platforms in place and using first ghost to hold buttons, I went to kill my self to respawn a new ghost and no characters respawned at all,  Was left stuck and not able to carry on.

Apart from those issues the game was great and I really liked the ghost mechanic and puzzle aspect of the game. Also the difficulty increase between each level was done well and game was very intuitive without the need of pop-ups or tutorial. Well Done! 

 

Developer

Thanks for playing and good to hear you liked it!

About the issues you found:

1) There is a slight variation of the jump height depending on the length one plays the jump button. Did you notice that? If you did not, then that might be one reason why the jumps felt too difficult. Originally I was planning to have more platforming challenges in the game in addition to the puzzles and that's why I tried to add more possibility control the height of the jump. But if that made jumping more difficult I maybe should have not kept that and instead have the jumps to be always max height.

2) Sorry about that. That sounds like really weird bug and I have no idea why that would happen. Thanks for letting me know. This is something that I have to investigate more. Hopefully I will be able to figure it out and prevent others from experiencing the same fate.

Submitted(+1)

Wow, the mechanic is super awesome! Its really cool!
Furthermore it is accompanied with a good level design. I liked like new functions were gradually added through new rooms

Also good smooth animation and nice visuals)

There was one problem when I stuck between moving platform (with spikes) and floor, but was managed to jump out after a while.

I have some suggestions, but they are more about further development, than about changing current behaviour:
Adding some  narrative or metanarrative to rooms: it could be additional motivation to go to other rooms, besides new challenges and game complition.

The visuals and art are really good, but maybe just a little more different tiles for walls(and other things) will add more varighty

Anyway the game is greate, I hope you will continue the project after the jam:)

Developer

I'm really glad to hear these kind words! Thank you so much for playing the game and for the feedback.

It's a relief to hear that the level design worked. I used quite a lot time to just think about the order in which to show new game elements to the player and to have interesting difficulty curve. I would had like to have more levels in the game but there was only so much time I was able to use for the jam and there was a lot other tasks than level design.

Similarly, I originally would have wanted the game to have more narrative elements. I had a concept for the narrative but there was no time to develop it further or add anything concrete in the game. I would be interested to know what kind of things you would have hoped for in a narrative: environmental story telling, dialogues, ... ? Also, what does metanarrative mean? I'm not familiar with the concept and Wikipedia did help me to connect it to games.

I will tell your comments about the art for our artist as they are probably not following these comments as closely as I am. They will surely be happy.

Submitted

Metanarrative - yea, mean story telling more via environment,  the details and surroundings. So the player experience are formulating the story.
Also, just wondering, did you have the original idea abot time traveling and not ressurections?:)

Submitted

Okay that was weird, I think it sent 2 comments at once

Developer (1 edit)

It is super weird! It has happened to me too multiple times in the past. I don't still no whether it is a bug of the platform or something that I do wrong when sending the message...

I removed the your message for now to keep the comment section clean.

Submitted

Mee to :< it seems some problem with itch.io

Submitted(+1)

I think there was an issue where there was only one scene that kept playing. Was that supposed to happen? If there was something else that was supposed to happen, I couldn't figure it out.  Aside from that, that was a really cool mechanic, using your past lives to get ahead. It was a lot of fun. The art was cool too!

Developer (1 edit)

Hi! Thanks for testing our game and for the feedback.

This is actually a critical bug that I only just now. There should be multiple levels but apparently I somehow managed to break the level switching script during the last evening as I'm certain that it has been working previously. In my understanding critical bug fixes are allowed by the jam rules so I have now updated the build to a version in which the player can actually proceed in the game...

Sorry for the trouble, but please try the game again with the new version if you have time! The levels will get even more interesting after the first one!

Submitted(+1)

Sorry, I am on a slow computer at the moment and will have to try the rest of it tomorrow. I got into the 3rd level but the game crashed on me, I think this is a problem with my pc because the browser is really slow here. That being said, I see the other levels, and it is really interesting how you have to use a sacrifice for different things like preventing the spears from moving, or to move a platform.

Viewing comments 13 to 1 of 33 · Previous page · First page