Devblog · Project

ChaseDown — Devblog 12

Achievements, item recycling, jobs & missions, mini-games, procedural maps, improvements and more!

It’s Official

Apparently I’m right on time with this patch. Within this past month, April to May has been very productive off and on work, exclusively the development of ChaseDown. Had a brainstorming session with my boyfriend with which I reviewed where I wanna go with the project, and now it all has a point.

It is official. ChaseDown is an actual game that’s actually gonna be released, no matter what the ratings are. ‘Till it’s actual release I’ll probably reincarnate myself twice, but the progress so far is genuine, satisfying and very functional, following rich logic with actual game-play / story.

Achievements

To make things remotely more interesting, I’ve added a couple of achievements which keep track of a player’s progress throughout the game and receiving rewards once completing them. I’ll not spoil the rewards, but here are the achievements that are currently in:

  • Auto: Automatically save the game once.
  • Break a Leg: Fall from High Height.
  • Choices: Interact with the environment.
  • Ecology: Manage your dirt properly. I would congratulate you, but…
  • Hit Stuff: Use a melee weapon to hit things or damage something.
  • Hold: Hold an item for once.
  • Hold Twice: Hold two items at once.
  • I’m In: Enter an apartment.
  • I’m Out: Exit an apartment.
  • Invoice: Purchase something from an in-game shop.
  • No0b: Started a new game.
  • Packbag: Open inventory for once.
  • Reload a Gun: Pretty much what that says.
  • Search: Open an container.
  • Shoot a Gun: Use a mighty gun for the first time.
  • Transaction: Make a Withdraw or Deposit ATM transaction.
  • Tunes: Play a Boombox or a Speaker.

Casino

I came with the idea of having mini-games in ChaseDown, which it would’ve inevitably come in hand. So I took the time to write a basic baseline which allows me to easily implement mini-games then being inspired by Bitlife‘s Blackjack mini-game, I thought it’s a great fitting for ChaseDown.

Blackjack

You know the good-ol’ Blackjack game, right? Alright, great! You bet an amount off of your bank account balance (minimum required to have is $1,000) and if you win, you win your money back + that amount. It can be tricky, there also totally isn’t an exploit.

Procedural Maps

I realized that I don’t really have any time for level/environment designing so I decided to write some code that generates Perlin Noise based cities. Most game objects and mechanics are implemented, from streetlights to bins, debris and occasional items (like money, keys for boxes also spawned in the world).

Jobs & Missions

First iteration of missions and jobs has been implemented in the game, finally! I enjoy logical complexity, so the system allows missions to earn minimum rewards even when failing certain missions. If you’re following through on the Staging branch, you should have noticed them.

Access missions through Payphones. Type in a number in the Mission Book side of the panel and check the rewards and maximum time given to complete the mission, as ready as you’ll feel. Use Compass to see where the picking up targets are, which are defined as yellow stars.

Each phone-call takes $2.

Prank Calling is also added, using the Payphone answer lines. Not too effective at this point but I feel it could be some sort of entertainment. As well as pedestrians that are being prank called will hunt you down or place a bounty.

Small test here:

Recycling

Added an old feature on the list which rewards you when cleaning up useless/remain game items. Minor feature I also added is the item ownership which makes it easy to tell if the player consumed a recyclable item, so it accordingly gives an amount of money as a reward, removing the item instance entirely from the game.

EULA

This has been there before but I forgot to make it show up when the loading screen is done in the previous patches. You gotta scroll down for the ACCEPT button lighten up.

Purchase History

I’ve added purchase/invoice history to saved files, which shows how many items/purchases have been done and how much money has been spent. It shows bank account purchase invoices and receipts of cash payments.

Fixes

Many improvements covering older and newer features and mechanics of the game have been applied, there’s still a lot to go. Polishing while implementing new things and older things correctly can be challenging. For example, last month I started working on a separate ui_logic branch which turned out awfully:

The current way I’m doing the UI panels showing/hiding is very hard coded, old code of mine which I tried to replace with the proper solution. That broke the entire game; suddenly hundreds of references were broken and even though everything seemed in place, going through each panel and child panel, still getting NullReferenceException all over the place. I got frustrated so I just left that out, fuck it, the game runs fine at the time.

Unity 2019.1

I am almost entirely sure that I won’t really be going to upgrade the engine. I checked-out the repository for a separate setup and after launching the project in the 2k19 version of Unity, many things were broken. I got many issues with Asset duplicates for the AssetBundle builder which I wasn’t getting in 2018, so going through all the assets and making each name unique for each material and texture, each LODs, it’s a fuck no-no.

Might check that out once again sometime later, or write a small script which properly sorts the names of each 3D model in the game content, idk.

Miscellaneous

Garry (Newman) inspired me to add a pretty satisfying UI element – hand link cursor change when hovering onto buttons.

Changelog

 Added Achievement system
 Added achievement: Auto (autosave is triggered)
 Added achievement: Break a Leg (player falls from high height)
 Added achievement: Choices (interacting with the environment)
 Added achievement: Ecology (player throws remains in dumpster/bin/trashcan)
 Added achievement: Hit Stuff (hit things with melee weapons)
 Added achievement: Hold (hold an hand-held item)
 Added achievement: Hold Twice (both hands hold hand-held items)
 Added achievement: I’m In (enter an apartment)
 Added achievement: I’m Out (exit an apartment)
 Added achievement: Invoice (purchase something)
 Added achievement: No0b (received once a new game is started)
 Added achievement: Packbag (open inventory)
 Added achievement: Reload a Gun
 Added achievement: Search (open an container)
 Added achievement: Shoot a Gun
 Added achievement: Transaction (withdraw or deposit ATM transaction)
 Added achievement: Tunes (play Boombox or a Speaker)
 Added Apartment numbers
 Added Blackjack mini-game (Casino)
 Added cursor hand-link change when hovering buttons
 Added EULA back
 Added item ownership
 Added Jobs and Missions logic and baseline
 Added mini-game baseline
 Added Payphone (with Prank Calling) - $2 per call
 Added Procedural City official map
 Added Procedural generation support
 Added Purchase History for Bank Account invoices and Cash Purchase receipts
 Added Recycle Manager
 Fixed Cursor
 Fixed Invoice Purchasing UI
 Removed unused Player-related properties
 Updated and fixed UI logic overall
 Updated ATM UI