TUXDB - LINUX GAMING AGGREGATE
by NuSuey
NEWSFEED
▪️ GAMES
▪️ STEAM DECK ▪️ DEALS ▪️ CROWDFUNDING ▪️ COMMUNITY
tuxdb.com logo
Support tuxDB on Patreon
Currently supported by 8 awesome people!

🌟 Special thanks to our amazing supporters:


✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Arch Toasty][Benedikt][David Martínez Martí]


Gauntlet game state object (and some technical rambling)

Gauntlet tasks to do before initial release


– [strike]Get local games fully working[/strike] – [strike]Object for holding game state in Gauntlet mode[/strike] – Auto-repair system + vehicle swap ability – Gauntlet game flow from menu to end – Score system – Level generation tweaks – Update scrap drop system – Item unlock system – Update How To Play screens – Test and balance gameplay – Music? "Object for holding game state in Gauntlet mode" is probably the most boring entry on the task list (wow what a great way to open a blog post), but let's talk technical stuff.

Scraps and persistent state


The Unity engine that Scraps is written in has this concept of "Scenes." You can put stuff in a scene, like make a level for your game. You can attach stuff to stuff in your scenes, like lights and physics and scripts that run code. A nice thing about Scenes is that when you go to a different one, everything you put in the first scene is unloaded, so you know you didn't accidentally leave anything hanging around taking up memory[1]. But sometimes obviously you want stuff that doesn't go away on scene change. Scraps Melee games need to remember who's playing when the map changes, Gauntlet games need to remember the player's scrap amount/score/etc when they move between levels, everything needs to remember which vehicle the player has selected and so on. You can create code that doesn't get destroyed on scene changes, either by making it totally separate from the scene system, or by marking it in the scene with a special DontDestroyOnLoad flag. Anyway, in the Scraps system:
(click for big) Everything there except ServerStartupInit (which just gets things going on the server) is persistent between scenes. Server is an object on the server, sort of a master controller. Client (for multiplayer) or Local (for singleplayer) are its client-side equivalents. There's a ScrapsPlayer for each player in a game - both AI or human. VehicleBase is a script on the vehicles themselves. It's subclassed into Client and Server variants. Having a ScrapsPlayer rather than having a player be their vehicle means that a player can continue to exist and run code when they don't have a vehicle, like between being destroyed and respawning. Whereas having VehicleBase on the vehicle means that vehicle-specific actions can still be done on the vehicle itself. For instance say a ScrapsPlayer decided to set the health level on a vehicle in 1 second's time, and within that time the player's vehicle changed to a different one, it could end up setting that health level on the wrong vehicle. If the vehicle script decided to do the same thing and the vehicle got destroyed within that second, the command would get destroyed as well and never happen. OK that's a pretty contrived example, but I do remember something somewhat like that being a real issue at one point. Network latency in particular makes everything need a bit more careful protection. ANYWAY, I haven't needed to update any of that very much, that's just some random info about the whole system. What I have needed to do is add a new type of GameData, because GameDataServer/GameDataClient/GameDataLocal were more like MeleeModeGameData. I mean look at this stuff in GameData:
(SUPER SECRET SCRAPS CODE DO NOT STEAL™) Number of players, networking stuff, starting scrap and other melee game settings. None of that's needed for a new singleplayer mode and adding Gauntlet mode stuff to it would just make it a big mess. So anyway GameData is now MeleeGameData and there's a new GauntletGameData too. It stores the player's score, what level they're on, etc. When a new game is started the appropriate GameData object is created based on the game type. I'm not sure if the next item on the list completed will be "Auto-repair system + vehicle swap ability" or "Gauntlet game flow from menu to end". The former is part of the latter but I might be able to do the game flow without having the new build screen systems totally ready. [1] As with many things code-related, this is sadly true only in the most naïve, optimistic theoretical way. If you have anything that doesn't get destroyed on a scene change (like a static class or a class with DontDestroyOnLoad), and it references something that should, the thing will still stay in memory until the reference is cleared.


[ 2017-05-22 11:10:36 CET ] [ Original post ]



Scraps: Modular Vehicle Combat
Moment Studio
  • Developer

  • Moment Studio
  • Publisher

  • 2020-12-18
  • Release

  • Action Indie Singleplayer Multiplayer
  • Tags

  • Game News Posts 61  
    🎹🖱️Keyboard + Mouse
    🕹️ Partial Controller Support
  • Controls

  • Mostly Positive

    (156 reviews)


  • Review Score

  • http://www.scrapsgame.com
  • Website

  • https://store.steampowered.com/app/350150 
  • Steam Store

  • The Game includes VR Support



    Scraps Linux [960.68 M]

  • Public Linux depots

  • Scraps: Modular Vehicle Combat is a vehicle combat game where you build your vehicle from parts, and where success lies just as much in designing a well-crafted vehicle as in your combat skills. Design from the chassis up, then pit your creation against humans or AI in a combat arena. When you take out other players, scavenge from their wreckage to repair or upgrade your own vehicle in-game.

    Scraps lets you create a vehicle that’s great or a vehicle that sucks. Maybe your vehicle falls over when it corners or doesn't have enough power to fire its weapons – that’s okay. Maybe it doesn't need an engine because it moves by firing its cannons backwards. You decide what you drive.

    Your design choices aren't just cosmetic - they're truly functional and at the very least affect the weight and balance of your vehicle. Battle in single-player against the AI, on LAN, or over the Internet. Easily host your own LAN or Internet games. Using the Scraps demo version, your friends can join a LAN game even if they don't own the full game.

    language Note:

    The only complete language at this time is English, but partial in-game translations are selectable for Russian, Danish, Dutch, Norwegian, Romanian, French, and Swedish.
    MINIMAL SETUP
    • OS: Tested on UbuntuGraphics: Radeon HD 6570 / Mobility Radeon HD 5850. Shader model 3.0.Network: Broadband Internet connectionStorage: 1 GB available spaceAdditional Notes: Broadband is only required for Internet play.
    • Graphics: Radeon HD 6570 / Mobility Radeon HD 5850. Shader model 3.0.Network: Broadband Internet connection
    • Storage: 1 GB available spaceAdditional Notes: Broadband is only required for Internet play.
    RECOMMENDED SETUP
    • OS: Tested on UbuntuGraphics: Radeon HD 5750 / Radeon HD 6750MNetwork: Broadband Internet connectionStorage: 1 GB available spaceAdditional Notes: Broadband is only required for Internet play.
    • Graphics: Radeon HD 5750 / Radeon HD 6750MNetwork: Broadband Internet connection
    • Storage: 1 GB available spaceAdditional Notes: Broadband is only required for Internet play.
    GAMEBILLET

    [ 5951 ]

    16.97$ (15%)
    0.60$ (90%)
    8.69$ (13%)
    11.25$ (55%)
    2.40$ (84%)
    6.79$ (15%)
    18.03$ (18%)
    49.79$ (17%)
    16.99$ (15%)
    16.52$ (17%)
    18.39$ (8%)
    2.27$ (85%)
    6.53$ (18%)
    15.99$ (20%)
    6.00$ (70%)
    1.15$ (93%)
    23.95$ (20%)
    10.18$ (49%)
    10.79$ (46%)
    30.36$ (24%)
    10.00$ (50%)
    4.39$ (12%)
    4.24$ (15%)
    4.95$ (67%)
    2.50$ (75%)
    24.87$ (17%)
    8.25$ (17%)
    10.48$ (74%)
    21.99$ (15%)
    12.74$ (15%)
    GAMERSGATE

    [ 3198 ]

    0.38$ (92%)
    5.0$ (75%)
    1.45$ (79%)
    0.56$ (81%)
    0.9$ (77%)
    0.6$ (92%)
    1.5$ (92%)
    9.89$ (34%)
    12.6$ (64%)
    8.0$ (60%)
    3.0$ (85%)
    16.5$ (67%)
    1.31$ (81%)
    3.14$ (55%)
    3.14$ (55%)
    1.31$ (81%)
    18.0$ (55%)
    4.0$ (80%)
    7.5$ (75%)
    2.25$ (85%)
    0.53$ (92%)
    3.0$ (70%)
    0.51$ (83%)
    3.6$ (70%)
    0.9$ (92%)
    1.84$ (74%)
    3.33$ (76%)
    5.63$ (77%)
    11.25$ (55%)
    0.56$ (81%)

    FANATICAL BUNDLES

    Time left:

    0 days, 15 hours, 49 minutes


    Time left:

    23 days, 15 hours, 49 minutes


    Time left:

    5 days, 15 hours, 49 minutes


    Time left:

    36 days, 15 hours, 49 minutes


    Time left:

    42 days, 15 hours, 49 minutes


    HUMBLE BUNDLES

    Time left:

    3 days, 9 hours, 49 minutes


    Time left:

    3 days, 9 hours, 49 minutes


    Time left:

    12 days, 9 hours, 49 minutes


    Time left:

    19 days, 9 hours, 49 minutes

    by buying games/dlcs from affiliate links you are supporting tuxDB
    🔴 LIVE