[J2DMonopoly] Free unfinished monopoly clone (Polished graphics)

Hey JGO, for the past 2 days I’ve been working on a networked monopoly clone.
As I pondered the required programming to finish the project, I decided to stop development and drop it. :yawn:
(I now desire to create a different game as I’ll be buying the monopoly game in-store, so I’ve lost interest in this project :slight_smile:

Before we start:
Thanks for reading JGO, I don’t know if you’re allowed to post “Free unfinished projects” so hopefully this thread isn’t deleted :stuck_out_tongue:

  • Enjoy, hopefully someone finds this useful whether you take code from it or finish it :slight_smile:

  • MEDIA FOR THE GAME IS AT THE END OF THIS THREAD

  • SOME CLASSES ARE AVAILABLE FOR VIEWING BELOW MEDIA (pastebin.java-gaming)

  • IF YOU USE THIS UNFINISHED PROJECT AND NEED HELP ON HOW A IMPLEMENTED FEATURE WORKS PM ME

If you desire the full eclipse project:
Download eclipse project (7.82mb -> assets included)

If you desire the source code only:
Download source (13.8kb)

PROJECT NOTES:
There are some coding flaws, like instantiating a new Font each render call. :emo: (See GameBoard.java)
There is no networking involved in this project, although I desired to do so using my networking library GNetLib as a test case.
Assets (sprites) folder is around 7mb. (Graphics have been enhanced via Photobucket)
This project uses JTattoo for a custom look and feel. (Currently GraphiteLookAndFeel)
Most of the code has comments by it, so if you wish to continue development it’ll be easier to do so.
The current features are flawless. (Features have been thoroughly debugged & fixed to work properly)
Banking system is awesome, keeps track of all bills and the quantity of that bill.
You can change the duration of a dice roll.
You can change the delay between dice texture changes that occurs during rolling.
You can change the rate at which the “Press space bar to roll” text flashes.

Current features:
Ability to create a game with 1-6 players. (See J2DMonopoly.java constructor)
Ability to deal players cash from the bank & have it deducted from the bank at the same time.
A simple dice rolling system. (Flawless so far)
Player cash system. (Player cash is rendered & shows # count of each bill)
8 Monopoly tokens. (barrow, boot, car, dog, hat, iron, ship, thimble)
Game rendering. (board, logo, side panels, dice, player tokens, player cash, bank cash etc)
Space bar to roll the dice. (Player turns/moving not implemented)
Game loop with the ability to set the desired FPS/UPS/frames to skip. (delta time implemented)
Advanced bank system. (All bill types in monopoly have been implemented)
Keyboard input. (Only working key at the moment is space bar -> to roll the dice)
FPS/UPS counter.

Features that are visible but not yet implemented:
A line rendering the pots current cash value. (No pot system implemented)

Console log of game starting up:


J2DMonopoly -> GameLauncher -> Setting look and feel for game window...
J2DMonopoly -> GameLauncher -> Creating game instance...
J2DMonopoly -> Setting up a new monopoly game...
J2DMonopoly -> Setting up gameBoard...
J2DMonopoly -> GameBoard -> Loading dice...
J2DMonopoly -> GameBoard -> Loading sprites...
J2DMonopoly -> GameBoard -> loadTokens set to false, skipping loading. (Developer option)
J2DMonopoly -> GameBoard -> Loading board sprite...
J2DMonopoly -> GameBoard -> Loading main background sprite...
J2DMonopoly -> GameBoard -> Loading mr monopoly left sprite...
J2DMonopoly -> GameBoard -> Loading mr monopoly right sprite...
J2DMonopoly -> GameBoard -> Loading money sprites...
J2DMonopoly -> GameBoard -> Loading board logo sprite...
J2DMonopoly -> GameBoard -> Loading dice sprites...
J2DMonopoly -> Setting up players...
J2DMonopoly -> Setting player 0 to controller...
J2DMonopoly -> Setting players position on board...
J2DMonopoly -> Setting up bank system...
J2DMonopoly -> Bank -> Setting up banks starting cash.
J2DMonopoly -> Bank -> Dealing players their starting cash.
J2DMonopoly -> Setting up game window...
J2DMonopoly -> Setting up game thread...
J2DMonopoly -> Starting game thread...

Game picture:
(NOTE: The “press spacebar to roll” text flashes @500ms interval)
(NOTE: The player token positioning on the “GO” spot incorrect)

Dice roll in progress picture:
(NOTE: Chooses a random number/dice texture every 200ms, interval can be configured)

Project packaging overview picture:

Some mentionable classes:
Bank.java
J2DMonopoly (Basically the game engine)
GameBoard.java (Where rolling dice/board related stuff is handled)