Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Critters #337

Closed
SirGiraffey opened this issue Jan 24, 2022 · 23 comments · Fixed by #418
Closed

Critters #337

SirGiraffey opened this issue Jan 24, 2022 · 23 comments · Fixed by #418
Milestone

Comments

@SirGiraffey
Copy link
Collaborator

Critters would be small entities with relatively simple AI and animations. They wouldn't affect the gameplay in any meaningful way, but they would make the game feel much more organic.

Small Fish: They would float around the level randomly, maybe form clumps and wouldn't drift too far from each other. When a player gets too close they get scared and swim away. When a bullet passes closely, they could panic and swim away quickly, completely disorganizing the "group". If hit by a laser or a bullet, they could turn into a tiny skeleton (or sushi for family-friendliness) that drops to the ground.

Crabs: They would walk left-right randomly and stop for a few moments, but they wouldn't walk off ledges on their own. If a player gets too close they would walk away, and drop from platforms if there is no wall to stop them from doing so.

obraz
obraz

@SirGiraffey SirGiraffey added the help wanted Extra attention is needed label Jan 24, 2022
@erlend-sh
Copy link
Member

erlend-sh commented Jan 24, 2022

This is for sure happening 👍 Might also be related to #43

And I would welcome more impactful gameplay alterations from critters. These sorts of incremental embellishments are how we add unique character to our game and ensure that although it’s a spiritual successor, it has its own soul 💫

We gotta make sure to have clear visual cues for the difference between static environmental doodads and interactive objects such as these and special tiles. For example some shine, like we already do with mines:

IMG_1311.MOV

@SirGiraffey
Copy link
Collaborator Author

SirGiraffey commented Mar 6, 2022

Just made a mock-up of another critter which could serve some gameplay purpose, but mainly be a great ambient feature, the angler fish. It glows in the dark!

Critters 3

@erlend-sh
Copy link
Member

Update from @zTecna:

819CFD6A-249A-4FB7-8CE0-0F07A7466A61

@zicklag
Copy link
Member

zicklag commented Apr 9, 2022

I'm going to be working on this. If anybody could upload some of the raw sprites for the crabs and little fish that would help, but nothing's stopping me from just using some placeholder sprites, so it's not a big deal.

Also @erlend-sh I wanted double-check on the scope of the MVP. I'm thinking:

  • We have crabs:
    • that can be placed on the map to define their spawn point
    • that can walk left and right randomly within a small distance
    • that will try to stay a minimum distance away from players by walking away from them
    • that, for the sake of scope for now, won't have any logic to avoid ledges
  • We have fish:
    • that are placed on the map to define the spawn point of the "school"
    • that will wander around, but stay within a certain distance of the center of the school
    • that will scatter when a fish runs through the center of the school
    • that will re-form as a group after getting scattered
  • Fish and crabs will be 100% aesthetic and in the background for now.

@zicklag
Copy link
Member

zicklag commented Apr 9, 2022

@olefasting Do you think critters would be fancy decorations, or a new MapItemKind::Critter?

It seems like maybe they should be their own map item kind because in the future certain ones could effect the player, and a decoration by definition should probably never do that.

Unless they're an Environment kind maybe? 🤔

Edit: For now, for simplicity, I'm just going to hard-code them in as environment items, following the same pattern that's used for sproingers. I'm assuming that's more hard-coded than we want to use in the future, but we can decide on how to make it more dynamic later, and I'll wait until I get some direction from you before I worry about how we'll do that. It will be easy to move the logic around once it's implemented.

@zicklag zicklag mentioned this issue Apr 10, 2022
@zicklag
Copy link
Member

zicklag commented Apr 10, 2022

I got crabs working!

I think the simple AI for them turned out pretty nice looking. They like to hang out where they've spawned, and if they get scared away, the'll eventually end up back in the vicinity of their "happy place", assuming they haven't fallen off a platform! In that case they'll just try to get in roughly the same horizontal position of their happy place.

They don't like big scary fishes ( the players ) and they'll run away from them. They apparently even bounce on sproingers with no extra effort on my part, which is hilarious.

I made a rough copy of the sprite above to use for them, but the shading isn't as nice so we can update the sprite later.

simplescreenrecorder-2022-04-09_19.07.38.mp4

It's pretty fun how they panic if you kind of trap them between two fish. 😄

simplescreenrecorder-2022-04-09_19.09.30.mp4

Here's the PR: #417.

@zTecna
Copy link
Contributor

zTecna commented Apr 12, 2022

I'm wanting to make a very basic animation of 1-frame for all the critters just to not make them too static.

@zicklag
Copy link
Member

zicklag commented Apr 12, 2022

Sure thing! I'm not sure how you guys usually add the artwork. Do you usually push a commit with the artwork so that you get attribution in the git history?

However you do it, if you want to, you could upload the animation or push a commit to a fork with the crab sprite in it, and I can integrate it into the pull request. Animating him would be very easy.

In the future me and my brother were even thinking the crabs might be able to dig into the floor to despawn and then dig back out in their spawn point if they got "lost".

@erlend-sh
Copy link
Member

I’m leaving the particulars up to @zTecna, but I believe we’re gonna maintain a cloud drive as the default (first) storage of all Fish Fight (and eventually Spicy Lobster) media assets.

Ideally all these files have the correct authorship attribution embedded in the file itself, but we may also need to maintain a AUTHORS.md file for each game (-folder), wherein we list all our media assets and their respective authors.

If there might be a better way to approach this, we’re all ears ☺️👂

@zTecna
Copy link
Contributor

zTecna commented Apr 12, 2022

Sure thing! I'm not sure how you guys usually add the artwork. Do you usually push a commit with the artwork so that you get attribution in the git history?

However you do it, if you want to, you could upload the animation or push a commit to a fork with the crab sprite in it, and I can integrate it into the pull request. Animating him would be very easy.

In the future me and my brother were even thinking the crabs might be able to dig into the floor to despawn and then dig back out in their spawn point if they got "lost".

I usually send a compressed file of the sprites by discord because I don't know how exactly the programmer will use and organize them. but i think i learned how to do the pull request i'm not so sure

@erlend-sh
Copy link
Member

#417 is merged! 🤗

@zicklag could you make a final demonstration video of this for sharing on Twitter? The more square-shaped and close-up the better, preferably without the hats & shell, as we haven’t yet fine-tuned those attachments to look really good in-game.

@zicklag
Copy link
Member

zicklag commented Apr 12, 2022

Sure I'll try to get a decent video made, hopefully tomorrow.

@zicklag
Copy link
Member

zicklag commented Apr 12, 2022

I usually send a compressed file of the sprites by discord because I don't know how exactly the programmer will use and organize them. but i think i learned how to do the pull request i'm not so sure

If the file has metadata that says you are the author, then it should be fine for you to upload the zip to GitHub and I could submit a PR for it. Or you could send it to another developer who's on Discord ( 'cause I'm not on Discord ).

Whatever you want to do. 🙂

@zTecna
Copy link
Contributor

zTecna commented Apr 13, 2022

I usually send a compressed file of the sprites by discord because I don't know how exactly the programmer will use and organize them. but i think i learned how to do the pull request i'm not so sure

If the file has metadata that says you are the author, then it should be fine for you to upload the zip to GitHub and I could submit a PR for it. Or you could send it to another developer who's on Discord ( 'cause I'm not on Discord ).

Whatever you want to do. 🙂

I have a drive where I will publish future and current sprites, if you want I can upload them and put the link for you here

@zicklag
Copy link
Member

zicklag commented Apr 13, 2022

I'll wait for another dev to do it, because I've got a weird network setup that will block a lot of sites and I probably won't be able to get to the drive.

@zTecna
Copy link
Contributor

zTecna commented Apr 13, 2022

I'll wait for another dev to do it, because I've got a weird network setup that will block a lot of sites and I probably won't be able to get to the drive.

even with google stuff? that's weird, but I'll see if I can make a pull request

@zicklag
Copy link
Member

zicklag commented Apr 13, 2022

even with google stuff?

Yeah, it's a unique scenario. 😄


Anyway, you should just be able to click and drag the file into a GitHub comment for any PNG or zip files, I think if you don't want to do a PR.

@zTecna
Copy link
Contributor

zTecna commented Apr 13, 2022

critters
I left all the animations this way because I don't know how you're going to fit them. if you need me to make it easier, just tell me how and I'm going to do it!

@zicklag
Copy link
Member

zicklag commented Apr 13, 2022

That will be fine, thanks!

zicklag added a commit to zicklag/jumpy that referenced this issue Apr 14, 2022
@zicklag
Copy link
Member

zicklag commented Apr 14, 2022

I got fishes working!

simplescreenrecorder-2022-04-14_18.20.44.mp4

I used @zTecna's sprites for this demo, and updated the crabs, too. I had also tried some smaller fish with more fish in each school and that looked rather nice, too.

It seems like we could have these bigger fish and smaller fish like in the picture in the original post as separate kinds of schools, but for now we've just got this one kind, and we'll eventually want to add fish schools as a kind of item that could be added through JSON so that users can create their own school types, probably.

I'll try to get a more proper video and pull requests for fish out as soon as I can.

@zicklag
Copy link
Member

zicklag commented Apr 16, 2022

@erlend-sh Here's a better video you could use for any progress updates or other posts:

critters.mp4

@erlend-sh erlend-sh removed the help wanted Extra attention is needed label Apr 17, 2022
@erlend-sh erlend-sh added this to the v0.4 milestone Apr 17, 2022
olefasting pushed a commit that referenced this issue Apr 17, 2022
* Implement Fish Schools

Part of #337

* Update Crab Sprite

- Add crab animations

* Update Fish School Sprites
@zicklag
Copy link
Member

zicklag commented May 23, 2022

@SirGiraffey ( or anybody else who has the sprites ) could you upload the tiny fish sprites to GitHub here.

Unless we have other plans, I wanted to add the smaller fish school as a different style school, with the same logic, but different sprites and maybe a higher average fish per school count.

Also, do we want to have the different style crabs, too?

@SirGiraffey
Copy link
Collaborator Author

SirGiraffey commented May 23, 2022

I can send the tiny sprites I made as sketches to show my idea, but I think they should be revised by the artists at some point
Critters Small Sprites

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants