Lucía Fernández

GameDev Tips And Tricks

My Game Development Tips & Tricks: Lessons I've Learned Along the Way!

Welcome to my little corner of Game Dev wisdom! Over the years, I've picked up a bunch of tips, tricks, and hard-earned lessons that have helped me through the ups and downs of making games. I'm sharing some of them here in the hopes that they'll help you on your journey, too.

Games to Learn Programming

Human Resource Machine - Logic & automation.
Shenzhen I/O - Circuit design & coding.
TIS-100 - Assembly-like programming puzzles.
CodeCombat - Learn Python/JavaScript in RPG style.
Hacknet - Simulated hacking.
7 Billion Humans - Parallel programming.
Colobot - Coding for robotics.
Exapunks - Creative problem-solving in code.

BubbleChat2

Richard Bartle's classification of players

Richard Bartle's classification of players identifies different player motivations in online games:
Achievers: aim for goals
Killers: seek competition
Socializers: enjoy interaction
Explorers: love discovering game worlds

PlayerTypes

Unity C# - CompareTag

Why should we use 'CompareTag' instead of '==Tag' ?
Performance: string comparisons are slower, less internally optimized and less precise.
Error Handling: CompareTag has a built-in check to ensure the tag exists, and if not Unity will throw an error.

CompareTag

The Deck of Lenses

Did you know 'The Deck of Lenses' by Jesse Schell? It's a handy tool if you're into Game Design! It provides useful perspectives and questions that can help your game grow
You can find it here: https://deck.artofgamedesign.com

DeckOfLenses1 DeckOfLenses2

VScode extensions

vscode-pets - Small animals walking around your editor. You can choose from different pets like cats, dogs, and more.
Rainbow-Brackets & Indent-Rainbow - Colorizes matching brackets, making it easier to spot them and keep your code neat and well-structured.
vscode-icons - Provides a set of icons to replace the default file icons in VS Code. Is a great visual aid tool.
Power Mode - Adds visual effects to your coding, such as explosions and screen shakes when you type.

BubbleChat2

Roblox Art Plugins

Mesh Optimization Tools - optimize TriangleMeshParts by toggling decomposition geometry, visualizing collision boxes, and patching MeshPart properties based on MeshId.
ParticleEmitter:Emit(n) V2 - easy ParticleEmitter bursts and emit count control.
RigEdit Lite - creating, editing, and resetting rig joints.
Team Create with Hats - Wear accessories in team create (not ART perse, but fun to use :D) .

AnimationPrinciples

Game Flow

Gameflow in videogame development is crucial. It ensures a smooth and enjoyable experience, preventing frustration and boredom, which helps maintain player interest and satisfaction.

Player must feel that it's a challenge but that they can overcome it.

GameFlow

Data Protocols for Multiplayer

Data Protocols used in multiplayer games:
TCP: ensures reliable transmission. Can be used for chat & lobby setups.
UDP: is faster, ideal for real-time gameplay, handling occasional data loss for quick updates in fast-paced games.

TcpUdp

Story Flow

What's a story? Here's a 3 act structure one:
1- Start point
2- Breaks the order/balance
3- Player chooses to face what happened (if not there's no story)
4- Maximum dramatic interest
5- How the world/character has turned out after the solution

StoryStructure

The 12 Principles of Animation

The 12 principles of animation bring characters to life, making movements more realistic and expressive. Master these for adding depth and dynamism to your characters and scenes!

AnimationPrinciples

Core Game Loop

The "action-reward-expansion" core loop in Game Design: players take actions, earn rewards, and use them to unlock new opportunities, creating an engaging cycle.

coreGameLoop

Roblox Luau Game Chat

Ever wondered how to make your Game Chat look fancier? You can use the TextChatService and add some fun colors and shapes to both the normal chat and the speech bubbles!

BubbleChat3

Audio Tools for Videogame Sound Engineers

Free sounds:
• http://freesound.org
• http://soundminer.com

Sound with Video Editor:
• Nuendo

Sound Mixer:
• Audition

Sound Design & Synthesis:
• FMOD
• Wwise
• Reaper

Multiplayer Protocol P2P

• There is no central server. All clients are connected to each other.
• Each client shares data directly with the others.
Advantages: Less expensive, no central server.
Disadvantages: Less secure and there may be synchronization issues.
Examples: Terraria, Payday2, Dark Souls

Host dependency: If the host player leaves, the game closes.
Host lag: If the host has a bad connection, it affects all players.
Host migration: In some games (such as Call of Duty), if the host leaves, the game pauses and attempts to assign a new host.

P2Pprotocol

Multiplayer Protocol Client-Server

• There is a central server that manages all the information.
• Clients (players or users) connect to the server, but not to each other.
Advantages: More secure and easier to control.
Disadvantages: If the server fails, everything stops working.
Examples: Roblox, Fortnite, LoL, WoW, Overwatch

No Host dependency: Game continues even if the host disconnects.
No lag: Statistics and progress are well synchronized.

P2Pprotocol