GearBlocks - danger726
Hi all, time for a long overdue progress update on the scenario mode, Lua scripting, and tutorials. This will continue on from the last blog post so check that out if you haven't already. Okay, let's get stuck in!

Code interfaces

Exposing the game's events and global variables to Lua scripting was a good start, but only allows the scripts to do pretty basic stuff. To properly open things up, scripts need access to entities in the game (such as players, tools, constructions, parts, and so on), so I've added interfaces for a whole bunch of classes in the game code and registered them to be accessible from Lua scripts.

I won't go through everything in detail here, but here's a brief overview of some of these interfaces:

IConstruction
  • State properties (is frozen, total mass, velocity, etc.)
  • List of parts making up the construction.
  • Methods to get a member part from an index, for moving the construction, and so on.
IPart
  • Part's attachments (allowing access to each attachment's position, connected part, etc.)
  • Material properties (mass, strength, is paintable, etc.)
  • List of part behaviours.
IPlayer
  • State properties (camera mode, is in free flight, velocity, etc.)
  • Targeter (to get currently targeted part).
  • Part inventory (mode, available part catalogue, etc.)
  • Toolbox (to get the active tool and the part selection).
IPartSelection
  • State properties (pivot part, is currently aligning, etc.)
  • Currently selected parts.
  • Methods to modify the part selection.
This is by no means a comprehensive list, but hopefully gives a flavour of what's available. I've made functions accessible from Lua scripts that can get hold of the game's construction and player instances, and then interrogate / manipulate them via these interfaces.

More UI features and proxies

Following on from the UI windowing system I covered in the previous blog post, I've made more UI elements available that can be added to a window from Lua scripting: toggle, slider, drop-down menu, input field, and picture (displays an image texture).



To support the interfaces, UI features, and Lua scripting in general, I had to add some more proxies for Unity types and static methods. These are: Quaternion, Time, Input (for raw input as opposed to key bound input actions), Texture (includes a function to load textures from file), and Rect.

Script mods

A Lua script can serve many purposes, but I think they essentially fall into two main use cases, a scenario script or a "script mod". A scenario script is loaded and run automatically when the player starts playing a scenario and is there to configure the game for that particular scenario. Whereas a script mod can be loaded at any point and can implement a tool, a custom UI, and so on.

Lua scripts can be loaded from any path location using the debug console, but I've added a UI screen for an easier way to load script mods from a "standard" location (this being a ScriptMods folder alongside the SavedConstructions and SavedGames folders). This UI screen also allows for publishing script mods to the workshop and loading those downloaded from the workshop.



I've written some simple tools as script mods that make use of some of the interfaces mentioned earlier.
  • Player tool: displays player's ID and current state (position, velocity, etc.)
  • Construction tool: displays current number of constructions, allows debug functionality to be enabled (e.g. "show part bounds"), and for a construction to be made non-targetable or even invisible.
  • Part inspector: shows targeted part's ID and current state (position, rotation, etc.)
  • Attachment inspector: shows targeted attachment's position, connected part, etc.
Here's an image showing all of these tool scripts running at once:



Some of these tools are useful for making scenarios, and they also serve as examples of how to write script mods, so I'll include them with the game.

For example, the part inspector can be used to find out the IDs of parts and constructions in a scene, and then those IDs can be used in a scenario script to reference those particular part or construction instances. Another example use would be preventing certain parts from being detachable or constructions from being targeted.

Checkpoints

For the tutorials and other scenarios I wanted to have "checkpoints", i.e. a way for a Lua script to detect when a player or construction enters a particular area in the scene. So I've added a new checkpoint part that can be placed in the scene and defines a trigger volume (actually a couple of variations, a box or cylinder). These parts don't do much on their own but they provide enter / exit events for Lua scripts to handle and implement useful behaviour.

The checkpoint parts need to be static (i.e. non movable under physics), so I had to implement a way to make a part be "pinned" (i.e. its parent rigidbody remains kinematic, even when the construction is unfrozen). This will also be needed for making a building foundation part which I want to add in the future to allow for buildings and other static constructions.

Here's what the checkpoints look like, note they also have a customisable text label:



I'm excited about what's now possible using checkpoints and scenario scripts, for example: timed laps with split times, obstacle courses, mini-games (e.g. vehicle based soccer, robot golf), you name it!

Tutorials

One of the main motivations behind scenario mode and Lua scripting are the in-game tutorials, and I'm making decent progress with these although it is slow going. It's quite tough trying to break down the game's complexities into simple incremental steps that gradually build upon the player's knowledge.

Here's what I have made so far:

Tutorial 1
  • 1) Briefly covers player movement (should be pretty familiar to anyone not living under a rock! :))
  • 2) Spawns a go-kart in front of the player.
  • 3) Introduces the construction menu and has the player use it to unfreeze the go-kart and turn it on.
  • 4) Gets the player used to controlling a construction by driving the go-kart, ending the tutorial once they reach a target speed.
Tutorial 2
  • 1) Starts with an upside down go-kart.
  • 2) Introduces the builder tool and has the player use it to freeze the go-kart and select a pivot point.
  • 3) Introduces the translation and rotation manipulators and gets the player to use them to pick up and rotate the go-kart to be right side up.
  • 4) Once the player unfreezes the go-kart, has them drive it over to a checkpoint.
Tutorial 3
  • 1) Starts with a go-kart with no wheels, and some loose wheels next to it.
  • 2) Has the player use the builder tool to position and freeze the go-kart, ready for building.
  • 3) Gets the player to pick up a wheel, use the rotation manipulator to rotate it, and align it to one of the go-kart's axles.
  • 4) Once they attach the first wheel, has the player attach the rest.
  • 5) Introduces the concept of attachments, and has the player target the wheel attachments and cycle them to rotary bearings.
  • 6) Once the player unfreezes the go-kart, has them drive it through a sequence of checkpoints.


Tutorial 4 is still in progress but will likely introduce the idea of detaching and moving parts, and the builder tool UI for spawning new parts.

I'm trying to make each tutorial build upon the previous one, and be a little more challenging for the player each time. As you can see I still have a way to go with this, I'm hoping things will go a bit faster now that I've implemented most of the game code support.

I reckon I'll probably end up with around ten basic tutorials, and that's just covering the essentials of building. I might make a second more advanced series of tutorials to cover mechanical concepts, but we'll see how things go.

Summing up

Recently I've also done a major Unity upgrade to 2020 (I tried 2021 but it broke some UI stuff), and plowed through a whole load of bug fixes.

Next up will be to continue working on the tutorial scenarios, and try to get those done as soon as possible. I'll also try adding some other simple scenarios, and I'm sure there'll be one or two other supporting features I'll need to implement in the game itself. That's it for this update, thanks for reading!
Aug 9, 2022
Arcane Waters - 𝓒𝑜𝓁𝓉
Our Playtest period has ended and quite a few of you have harvested potatoes and explored the seas. Thank you all for checking the game out! We'd love to hear from you. Please take the survey and let us know what you think!

https://forms.gle/f8vBqaCU7H6SdUPe8

We're going to buckle down and get to work on your suggestions and feedback, especially what you send us in the survey above. The playtest might be closed now, but we plan to give you more opportunities to check out the game in the future before we release it into Early Access. Keep an eye out here, or sign up for our newsletter so you're informed the next time we open for playtesting. There's a lot of content heading your way and even some you may have missed. In fact, only 16% of you found one of our hidden secrets in Port Haven.

Make sure you wishlist the game on Steam and follow us so you get updates about our progress. Don't worry, we'll continue to use Discord to chat, get feedback, and provide you with an inside look.

Here was the final Leader Board for the Playtest:
Top Farmer: Daboi
Top Crafter: Erza
Top Miner: Wagrant
Top Trader: Slayer
Top Sailor: Forte

Thank you all for your feedback and suggestions. We're really excited you have been sailing the seas with us!
Aug 9, 2022
Arcane Waters Playtest - 𝓒𝑜𝓁𝓉
Our Playtest period has ended and quite a few of you have harvested potatoes and explored the seas. Thank you all for checking the game out! We'd love to hear from you. Please take the survey and let us know what you think!

https://forms.gle/f8vBqaCU7H6SdUPe8

We're going to buckle down and get to work on your suggestions and feedback, especially what you send us in the survey above. The playtest might be closed now, but we plan to give you more opportunities to check out the game in the future before we release it into Early Access. Keep an eye out here, or sign up for our newsletter so you're informed the next time we open for playtesting. There's a lot of content heading your way and even some you may have missed. In fact, only 16% of you found one of our hidden secrets in Port Haven.

Make sure you wishlist the game on Steam and follow us so you get updates about our progress. Don't worry, we'll continue to use Discord to chat, get feedback, and provide you with an inside look.

Here was the final Leader Board for the Playtest:
Top Farmer: Daboi
Top Crafter: Erza
Top Miner: Wagrant
Top Trader: Slayer
Top Sailor: Forte

Thank you all for your feedback and suggestions. We're really excited you have been sailing the seas with us!
Dice Of Knights - celal1387
Dear players of "Dice of Knights".
After a long absence, I am back with good news!
My new game is on Steam and waiting for your wishlists before its release!

About The Game
1387MMO is a mmo strategy game where you are one of the first explorers of the New World. Manage your island and make it the most powerful colony in the game!

The game is inspired by mobile and web based mmo strategy games. You must manage your economy, upgrade farms and other economical resources.
And you should choose your side between defending your colony or being a pirate that spreads his name in the new world with his monsters.

Release
The game will be released on Steam in the summer of 2023.
You can join Discord server to enter closed beta.
We will announce it when it begins.

You can find Discord invite link on 1387MMO's Steam page.

Wishlist it now!
Click here to wishlist

Legacy of Sin: The Father Sacrifice - [EB] Phoenix King


Legacy of Sin the father sacrifice was our first game, and we are very proud of it. We managed with hard work to invest to create the sequel game "Legacy of Sin blood oath" with new characters, enemies, strategies and much more.

Check out the new game and add it to your Wishlist:
https://store.steampowered.com/app/1969820/Legacy_of_Sin_blood_oath/?beta=0%20

As we are a beginning studio we opted to reuse elements from the first game and focus our resources to create new things. We hope you enjoy the game as much as we enjoyed creating it.

Check out our new website:
https://absolutepowergamestudio.com/
Crypt of the NecroDancer - BYG Demi
Crypt of the NecroDancer v3.1.1—SYNCHRONY's first post-launch patch—is now available! Some highlights of this update include improved controller support, networking scalability/stability, new player management options, some buffs to Klarinetta, and various interaction and bug fixes for Chaunter! Check out the full patch notes below.

Edit: The following change was removed from these notes as it did not make it into this patch: "Changed Klarinetta's sword to no longer benefit from damage-ups if enemies walk into it on a non-spin attack"

New Features and Changes​
Additions
  • Added a 'Player List' menu with options to view profiles, as well as force-spectate, mute, kick and ban players
  • Added hotkey for toggling pause in-game (defaults to 'P')
  • Added shield slot transaction panel to Conjurer, Transmogrifier and Pawnbroker
  • Added "restore default gameplay" option to customization menu, which resets all leaderboard-affecting mods and settings
  • Added the ability for Klarinetta to swing her sword on ice
  • Added the ability for Klarinetta to spin counter-clockwise by inputting the sword's current diagonal
  • Added starting armor to Klarinetta
  • Added special interaction for Rifles and Crossbows thrown by Throwing Charm
  • Added visual tell for Dash Spell to indicate its range
  • Added glow sprite when Risk Charm's damage bonus is active
  • Added new zone-dependent wall spike sprites, improving visibility
  • Added mod support for displaying entities in chat
  • Added mod support for in-turn rollbackable chat messages
  • Added automatic legacy controller support when Steam Input is disabled
  • Added descriptions to controls reassignment menu
  • Added option to auto-select primary controller
  • Added an option to disable diagonal auto-swap for Klarinetta/Diamond
  • Added custom rule to allow all players to use the in-game level editor

Changes
  • Changed player list HUD to handle large player counts
  • Changed possessed Shopkeepers to take damage every beat once the timer expires
  • Changed multiplayer escape menu to no longer pause the game if the host is spectating or dead
  • Changed Klarinetta's facing logic to match other characters, altering her head sprite to indicate the facing direction
  • Changed Klarinetta's bestiary art to a newer version
  • Changed crates, barrels and urns to be damaged by Wall Spikes
  • Changed Berserk Spell to grant groove chain protection
  • Changed Berserk Spell to cause screenshake on each step
  • Changed controller hot-swap to be disabled by default unless on Steam Deck
  • Changed Throwing Charm to force-drop thrown weapons if another player picks them up
  • Changed spectators or dead players causing Dorian not to spawn in Cadence's final boss fight
  • Changed Conductor Pulse Tell to also apply to the base game without the Synchrony DLC
  • Changed Throwing Charm to also be usable by Melody, Dove, and Suzu
  • Changed multiplayer respawning to grant weaponless players a new starting weapon
  • Changed armor sprites to be hidden in mystery mode if the Synchrony DLC is active
  • Changed Transmute to no longer have an effect in the lobby
  • Changed Berserk Spell/Scroll to no longer spawn for Monk/Coda
  • Changed order for 'AMP'/'SYNC' DLC indicators in game browser to be consistent
  • Changed Ring of Gold to only auto-collect gold in a limited radius
  • Changed 'Balance Tweaks' feature pack to no longer auto-load
  • Changed NecroDancer possession to allow more consistent use of his abilities
  • Changed Tridents to no longer spawn for Diamond
  • Changed Tridents to spawn less frequently
  • Changed chat logging to be disabled by default
  • Changed Shrine of Space to no longer spawn for Suzu and Chaunter
  • Changed traps in the boss starting room to despawn on when the boss fight starts
  • Changed Shock Monkey damage to 0.5 hearts of damage (5 hearts if powered)
  • Changed Shock Monkey to no longer ignore invincibility frames or armor
  • Changed gold drop of shock monkey to 5 coins
  • Changed anti-poverty-blocking logic to also apply to mushrooms and mushroom lights
  • Changed door connectivity condition to fix some cases of misaligned doors
  • Changed Spiked Wall spawn rate from 10% to 8%
  • Changed Thief to the correct editor category
  • Changed Onyx weapons to no longer spawn for Tempo
  • Changed Cracked Floors to no longer spawn for Dove or in hard mode
  • Changed Pickaxe to grant immunity to Spiked Walls
  • Changed Spiked Walls to inflict damage when dug diagonally
  • Changed Klarinetta's shadow to match her sprite size
  • Changed bombs and fireballs to burn down Zone 2 grass
  • Changed Spiked Wall generation logic
  • Changed bounce traps to be ignored by Suzu's charge when they're already facing the direction Suzu is going
  • Changed Rhythm Shrine to convert shields to Obsidian
  • Changed auto-latency calibration logic to work better for double-tempo characters
  • Changed deletion of "strictly weaker" items to be disabled by default in Synchrony
  • Changed sprite for the Shield transaction panel
  • Changed Chaunter to unfreeze enemies when possessing them (making ring of frost usable)
  • Changed Heavy Shield to rarely appear in boss chests after zone 1
  • Changed Enchant Scroll, Boots of Pain, and Ring of Pain to no longer spawn for Chaunter
  • Changed Reflective Shield and Shield of Shove to no longer spawn for Dove
Fixes
  • Fixed custom rules not resetting on disconnect
  • Fixed chat key being unbound if menu controls were customized in v3.0.x
  • Fixed stuck animations when loading an invalid character skin
  • Fixed softlock when Chaunter gets grabbed by a monkey on a trapdoor
  • Fixed multi-character runs not deleting spectators
  • Fixed softlock when possessing stunned enemy on stairs
  • Fixed softlock when song ends while possessing
  • Fixed blast helm not granting bombs to possessed enemies
  • Fixed blood weapons and crown of thorns not working on possessed enemies
  • Fixed ring of gluttony improving non-food items
  • Fixed quick restart hotkey not being usable from the game over screen after in a multi-character run
  • Fixed missing DLC check
  • Fixed Dash tell not working without AMPLIFIED
  • Fixed Aria getting cracked floors in 1-3 when AMPLIFIED is disabled
  • Fixed empty/invalid asset mods not being unloaded when starting the game
  • Fixed trait components not working correctly past level 1
  • Fixed missing i18n strings for DLC character names
  • Fixed errors when removing `stats` tag from some enemies via .xml mods
  • Fixed Dorian not spawning in Cadence's final boss after playing local coop
  • Fixed possessed spiders disappearing immediately
  • Fixed possessed enemies getting shovels from need/transmute
  • Fixed Chaunter's shovel being stealable
  • Fixed Eli being unable to damage the Conductor's instruments
  • Fixed floor cracks and thiefs spawning inside shops
  • Fixed evil eyes being immune to Spiked Walls
  • Fixed lobby NPCs screaming for help while in the editor
  • Fixed editor marker shadow offset
  • Fixed missing ice cauldron bestiary image
  • Fixed missing bestiary art for ice cauldrons
  • Fixed thief staying indefinitely when running out of items to steal
  • Fixed global Activation breaking when slowest player dies/spectates
  • Fixed replays sometimes causing invalid leaderboard entries to be created
  • Fixed Nicolas Daoust and Deaderick being swapped
  • Fixed NecroDancer not dying when unpossessed
  • Fixed explicit-default rhythm mode submitting to custom music boards
  • Fixed Chaunter softlock in Shriner/Arena
  • Fixed unpause countdown causing softlocks in multiplayer
  • Fixed error when casting Berserk spell while possessing an enemy
  • Fixed Chaunter not breaking Low% while possessing
  • Fixed boss summons not inheriting the boss's team
  • Fixed "Doppelgänger" achievement unlocking via self-damage
  • Fixed chat key not being bound by default sometimes
  • Fixed Dice Trap minibosses being stairs locking
  • Fixed Onyx weapons not dealing 999 damage to grabbers
  • Fixed story bosses being grabbable
  • Fixed Mannequin dropping Transform Spell and ∞ bombs
  • Fixed Chaunter ending on the same tile as enemy after being killed as a warlock
  • Fixed shrines spawning items on top of chests
  • Fixed fallen spiders being immune to Spiked Walls
  • Fixed foresight + ring of shadows still revealing Spiked Walls
  • Fixed grass state being lost on live reload
  • Fixed berzerk scroll being listed in the spell category
  • Fixed Glass Shovel failing to dig Spiked Walls
  • Fixed Thief dropping gold for Monk/Coda
  • Fixed doors sometimes being in the wrong orientation
  • Fixed fire traps overriding cracked walls
  • Fixed Suzu's charge not behaving like a normal move
  • Fixed priority being reset on conversion
  • Fixed CR phase 1 being mirrored
  • Fixed Klarinetta interactions with beetles and war
  • Fixed shield of shove triggering recursively on Klarinetta
  • Fixed Dove being murderous
  • Fixed ND2 fight spawning sarcos out of bounds
  • Fixed Steam Input possibly failing to register the UP movement action
  • Fixed non-equipped shields still being rendered in-world
  • Fixed `mods` directory not being initialized
  • Fixed carrot interactions with Chaunter
  • Fixed Mac build not supplying an icon
  • Fixed occasional visual flickering when coin stacks are merged
  • Fixed Scatter Trap not scattering Shields
  • Fixed Chaunter clones using Cadence clones when Chaunter is possessing an enemy
  • Fixed Dove's flower dealing 0 damage on the way back with Throwing Charm
  • Fixed primary input device selection reactivating itself immediately
  • Fixed custom skins not showing immediately when joining a lobby
  • Fixed in-game level editor not allowing the host to edit while in spectator mode
  • Fixed pause screen incorrectly hiding game for non-host players
  • Fixed feedback screenshots being hidden by the pause screen
  • Fixed Steam-related player list options not working
  • Fixed sub-run replays submitting to leaderboards
  • Fixed dice traps ignoring ring of peace and shrine of war
  • Fixed Berserk Spell ignoring confusion
  • Fixed dragon fireballs bypassing player shields at point-blank range
  • Fixed error when a yellow or black skeleton is killed by lava
  • Fixed Aria's 1-2 sometimes not having a sarco
  • Fixed Klarinetta's attacks hitting enemies inside walls
  • Fixed Suzu's charge hitting enemies inside walls
  • Fixed pixies being impossible to unlock for training
  • Fixed possessed pawns not promoting when reaching the top row
  • Fixed heart transplant not working on Chaunter
  • Fixed issues when using multiple heart transplants in a row
Versus Mode Changes
  • Added a custom rule to allow all characters to be played in Versus Mode
  • Added Trident to item pools
  • Added Crimson and Jade Trident equipment sprites
  • Added Dice Trap and auto spike trap to levelgen
  • Added Wall Spikes to levelgen
  • Changed player list to auto-hide when round begins
  • Changed arena generation to create more spawn points for players
  • Fixed components being added too eagerly
  • Fixed certain components not being added to custom items
  • Fixed one of the rooms not getting torches genned
  • Fixed traps being tallsprited
  • Fixed crates trying to wield items contained within them
  • Fixed occassional void tiles in arena generation
  • Fixed equipment sprites not being always enabled
  • Fixed prep room breaking with 10+ players
  • Fixed Essences causing item errors
Path of Exile - CommunityTeam_GGG
We've already teased a couple of sneak peaks, and today we're revealing the rest of the 15 new Divination Cards that you'll be able to find once Path of Exile: Lake of Kalandra launches. Check them out!















Aug 9, 2022
Real estate tycoon - 最后一颗子弹
small update
PropHunter - Alone Fox
Introducing update 0.6.12.0!
In this update:
- Added new map "Japan";
- Fixed - sudden takeoff of some items when the player was approaching them;
- Carried out a small optimization of the game;

We hope you enjoy the update!






Just Go - Puck_Rui
Greetings!

We're trilled to announce that “Just Go” is now available on Steam, thank you for your continued interest and support!

The game is priced at $9.99 with a 10% launch discount for the first week. If you're interested in the game, then don't miss this opportunity.



Compared to the demo version, in the official release, we have added the following:
  • A more realistic career mode experience
  • Over 3,000 Go problems (Tsumego) for all levels of players
  • A fully dubbed Go tutorials for beginners covering from the Opening to the Endgame
  • Two gorgeous new game scenes (Chinese Garden and Tournament Room)
  • Upload local games in SGF format (game will provide AI reviews and intelligent analysis)
  • Global leaderboard to help you find players of similar level and play against them on Steam
  • Hundreds of classic Go matches have been recorded
  • OGS integration improvements



Also, Russian and German localization is in progress, and we will add support for both languages later this year.

Finally, we would appreciate it if you could leave a review on Steam about your experience with the game, it would mean a lot to us! Thanks again!

https://store.steampowered.com/app/1862520/
- Amateur Studio
...