DEV Community

ItsASine (Kayla)
ItsASine (Kayla)

Posted on

Pusher Shopkeep Game - Initial Idea

Initial Thoughts

Pusher allows for real-time updates to all users of the app in channels or as a whole. Being a math major, this would be cool for live-updating data, but there's no data APIs that really catch my eye for a data viz project. The US fed, state, and local governments have a ton of apis that could work with that, but... really, just nothing was interesting to me. I'm not looking to save the world here. And the apis would have to be real time or near real time to really utilize Pusher, but only popular apis can get that kind of infestructure around them. Open data tends to be more in the form of data dumps that data apis. ❌

Something real-time... my hobbies include video games and... more video games. So a browser game! Except I know nothing about game design, assets, and quite frankly never even play multiplayer games that much (single player RPGs all the way) ((except Guild Wars 2 might as well be a single player MMO)). With only a month to the project, that totally isn't happening. And it's finals week right now, so not even a full month. ❌ While I trust Pusher's claims it's easy to set up, I'm a noob at server side development, so it's going to take me a while. Adding more and more learning on top is just unneeded scope creep.


I try to only have side projects that I would use myself, so I'll actually follow through on making it, so it has to be something that I'm going to find useful. I've always had an idea for a game that would be single player but minorly influenced by all players. It would be a shopkeep game where you maintain items to sell to your NPCs, but the prices the NPCs are willing to pay are influenced by the "market". You never interact with other players, but if people are selling widgets in high volumes, the price point of widgets will go down in everyone's games. Come back in a week and the price of widgets skyrockets since no one was selling them and the "market" is at a shortage.

Kinda like stock tracking, but with shop items. My second favorite game of all time is Recettear which involves adventuring for loot and them coming back to your shop to sell it. This would be heavily inspired by that, but it would be a basic lame-looking JS app and not a beautiful masterpiece of a game such as Recettear.

Initial Tech Stack

JavaScript all the things! To lower the barrier for making a game in a month, I'm sticking with what I know. Probably spin it up with AWS CodeStar. They have templates for noobs, and I am such a noob.

Performance

I'm likely going to have to set up the concept of "days" in the app. The market wouldn't have to update every transaction, just at the end of every... hour?... or so. And likely that number will need to be highly configurable so I can actually test if the thing works locally.

Risks

I have a full-time job and no clue what I'm doing. So yeah... let's see how this looks at the end of the month. The biggest risks are my time and my knowledge/capabilities.

Best-case, I'm going to basically have virtual stick figures buying and selling emojis. Actually, wait, that sounds fun...

Top comments (5)

Collapse
 
kayis profile image
K

Cool!

I played around with Pusher and AWS today and it was pretty nice.

While the AWS docs, tutorials and examples are pretty much all over the place I found them rather helpful.

Took me like 5 minutes to connect to Pusher in the client and line 3 hours to setup AWS Lambda with AWS SAM, haha.

I made a repo here maybe this helps.

github.com/kay-is/startup-clix

At the moment the client just subscribes to a public channel and gets events from a scheduled Lambda function.

Collapse
 
itsasine profile image
ItsASine (Kayla)

I'm using AWS for my summer capstone project (and then I'll have a shiny graduate degree!), so while I've read the docs, I've never actually made a (working) prototype with AWS.

Thanks for the link to your repo! It looks like it'll be an awesome resource for my initial set up.

Collapse
 
avalander profile image
Avalander

Nice! It's sounds like a fun concept, it'll be interesting to see what you're able to do!

Collapse
 
itsasine profile image
ItsASine (Kayla)

Thanks! I made the GitHub repo for it, so it's as good as done now, right? 😉

Collapse
 
avalander profile image
Avalander

Absolutely! If there's a GitHub repo, there's no turning back, haha!