About The Streets of Slopville
Play The Streets of Slopville on Freega.me »
Inspiration
The Streets of Slopville was inspired by the golden era of browser gaming; old-school Newgrounds Flash games StickRPG and The Classroom. It started as a basic demo where you could just walk a character around, but it quickly evolved into a full open-world gang sim as the nostalgia (and ideas) took over.
How I Built the Project
I built this project using bolt.new, leveraging Phaser.js for the game engine and React for the UI. Bolt was especially helpful in scaffolding out the early parts of the project - setting up the main systems, player controls, and the base map. As the game grew, I used Bolt’s discussion feature to plan major changes and relied on other AI coding tools to help implement specific new features, as described in those plans.
Once the project size became too big for Bolt to efficiently handle full-file edits, my workflow shifted:
- Plan features or refactors in Bolt Discussions
- Write or generate the code outside Bolt
- Iterate and test manually
This hybrid approach let me keep moving fast even as the project complexity increased. Bolt also made deploying to Netlify effortless, and integrating GitHub improved my source control workflow.
What I Learned
Working on Slopville taught me a ton about the Phaser.js game framework—especially managing state, handling user input, and implementing real-time systems like combat and NPC AI. I also learned that it's best to get as much of the boilerplate and scaffolding done up front in tools like Bolt, since large projects can quickly outgrow the context window and token limits of LLMs.
Some key takeaways:
- Use planning/discussion tools first to outline complex changes
- Break up large tasks into small, manageable pieces
- Get the skeleton in place early; it’s easier (and cheaper) to fill in the details later
Challenges Faced
- Context Limitations: As the codebase grew, simple code edits started to exceed Bolt’s token/context limits. This made iterative changes harder, forcing me to plan better and split up changes.
- Integrating AI Workflows: Combining Bolt discussions with manual edits and other LLM tools required a bit of juggling, but paid off for complex features.
- Real-time Systems: Implementing combat, AI, and the respect/faction systems required careful state management and debugging, especially as more features interacted with each other.
- Deployment: Making sure the game worked smoothly on Netlify, especially with service worker updates and asset caching.
About the Game
The Streets of Slopville is an open-world gang simulation game set in a city torn between two rival factions. Explore, survive, and rise to power as you carve out your own story.
Game Features
- Faction System: Choose to join the Northside Gang, Southside Gang, or remain neutral. Your faction shapes your experience—who’s friend, who’s foe, and what opportunities you get.
- Open World: Roam a city packed with 16 unique buildings, each offering different services, jobs, or dangers.
- Combat System: Fight rival gang members with weapons, manage your health with consumables, and pawn off luxury items. The constant threat of violence from the gangs keeps you on your toes.
- Economy: Earn money from jobs, selling luxury items, gambling, and illicit activity. Spend it wisely on weapons and food, or risk it all in the casino.
- Respect System: Your actions build (or destroy) your reputation with the city’s factions.
- Inventory Management: Collect and manage weapons, consumables, luxury items, and contraband.
- Building Interiors: Each location offers something new: banks, shops, gang hideouts, bars, and more.
Buildings
| Building | Description |
|---|---|
| Bank | Store items in your vault |
| Convenience Store | Buy consumables and items |
| Office | Work for money (daily limit) |
| Gang Hideouts | Faction-specific shops for illicit items |
| Bar | Drinks and socializing |
| Police Station | Law enforcement |
| Hospital | Heal injuries for a fee |
| Trap House | Sell illicit items |
| Player's Home | Your safe house |
| Fast Burger | Work for money and food |
| Pawn Shop | Buy and sell items |
| Fight Club | Combat arena |
| Barbershop | Change your appearance |
| Gym | Train for better combat stats |
| Casino | Gamble for big wins (or losses) |
Controls
- WASD / Arrow Keys: Move player
- E: Interact with doors and NPCs
- Q: Building-specific interactions
- Space: Attack enemies
- Left Click: Use consumables
- Hover: View item details
Key Game Mechanics
- Faction System: Affects who helps you, what you can access, and how the world responds to your actions.
- Combat: Real-time battles, weapon bonuses, and NPCs.
- Economy: Multiple ways to earn (and lose) money; manage risk and reward.
- Inventory: Stack, use, and trade a wide range of items.
Survive the streets, build your empire, and become a legend in Slopville!
Ready to play? Try The Streets of Slopville now!
Built With
- bolt.new
- chatgpt
- entri
- github
- netlify
- phaser.js
- react
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.