Main Page: Difference between revisions

From LD Smith Games Workshop
Jump to navigation Jump to search
 
(273 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Legend of Tux'''
__NOTOC__


== News ==
This is the Workshop area for the latest project development updates.  For the complete listing of released games, please see '''[https://levidsmith.com/game-list/ LD Smith Games]'''.


'''Legend of Tux version 0.8 released''' on February 6, 2010!  Download it at [http://sourceforge.net/projects/legendoftux/ SourceForge]
== Updates ==


Added Legend of Tux to SourceForge: [http://sourceforge.net/projects/legendoftux/ http://sourceforge.net/projects/legendoftux/]
=== January 2024 ===
* '''[https://levidsmith.com/games/bag-boy/ Bag Boy]''' - New release with updated gameplay and graphics
[[File:Bag-boy 20240121 02.jpg|200px|frameless|Bag Boy]]


Domain name registered: [http://www.legendoftux.com http://www.legendoftux.com]
=== October 2023 ===
* Migrated site to new server. Working on getting website components working again. (main site, workshop wiki, leaderboards, historical pages).
* Looks like I lost the Jetpack stats for the main site. A real disappointment, since it contained visit statistics for almost 10 years.
* Thinking about putting the leaderboard scores on its own subdomain (such as scores.levidsmith.com), but want to avoid having to update URLs compiled into game projects.
* Removed many of the old game wiki pages with little information. Current plan is to use the workshop (wiki) for development documentation for new projects, then have the "official" pages on the main levidsmith.com site.  That should keep a clear separation between development and release information for projects.
* Fewer games created this year due to burnout.  Want to spend the time I do have on making existing games better and create fewer throwaway projects.


Linux: Make sure you are using the latest version of SDL_image to compile (SDL_image-1.2.10).  I received compilation errors (IMG_INIT_PNG undefined) using the version in Ubuntu's Synaptic package manager.
=== December 2022 ===
* '''[https://levidsmith.com/games/christmas-tree-simulator/ Christmas Tree Simulator]''' - Updated user interface. New tree model and collision mesh.
[[File:christmas-tree-simulator 20221218.jpg|200px|frameless|Christmas Tree Simulator]]


== Concept ==
=== October 2022 ===
* '''[https://levidsmith.com/games/old-timer-peg-game/ Old Timer Peg Game]''' - Game created for 48 hour game jam
[[File:Peg-game 20221001 01.jpg|200px|frameless|Old Timer Peg Game]]


I started development on the Legend of Tux in August 2009. I wanted to create a game that combined the gameplay of a Mega Man game and the original Legend of ZeldaI had developed a Zelda clone using updated graphics in 2003, using ClanLib librariesIn 2006 I created an engine for a tux Zelda style game using SDL, but it wasn't very goodI didn't have much time to devote to it, since I was working on a master's degree in industrial engineering outside of my full time job.
=== September 2022 ===
* '''[https://levidsmith.com/games/weather-lab Weather Lab]''' - Changed name of Turn Back the Clocks to Weather Lab. Added selectable weather stations on a map of the United StatesWhen a station is selected the temperature, wind direction, and wind speed are shown on models of thermometers, wind vane, and anemometerAdditional clocks addedWeather and time zone data pulled from web APIs.  Outdoor lighting changes with time and location selected.
[[File:Weather-lab 630x500.jpg|200px|frameless|Weather Lab]]


The controls are simple. Use the arrow keys (or a,s,d,w) to move and spacebar to attack. Press f to throw your hat boomerang, which will stun enemies.  Hold spacebar to charge your sword to shoot it. Collect a power orb to get a 3x attack power boost against enemies of that color. Defeat all enemies in a room to move to the next room. Clear all 16 rooms to complete a level.  Finish all eight levels to win the game.


Gameplay is completely linear. Move one room to the next until you reach the boss room and defeat the bossThe one aspect that I hate the most about Zelda style games is trying to determine where to go next.
=== August 2022 ===
* '''[https://levidsmith.com/games/turn-back-clocks Turn Back the Clocks]''' - Added two digital clocks and day calendarAdded light switch.
[[File:Turn-back-the-clocks 20220822.png|200px|frameless|Turn Back the Clocks]]


The Legend of Tux is free software.  The source code is available on SourceForge.  I am attempting to document the entire software development process.


== Controls ==
=== July 2022 ===
* '''[https://levidsmith.com/games/polyglot-pelican/ Polyglot Pelican]''' - Changed title theme.  Fixed issue with enemy spawning after level complete.
* '''[https://levidsmith.com/games/shark-food/ Shark Food]''' - Fixed leaderboard submit/display.  Updated menus.  Fixed models/animations to use latest Blender/Unity.


Click image to enlarge
[[File:Shark Food 20220705 01.jpg|200px|frameless|Shark Food]]


[[Image:lotux controls.png|500px]]
=== June 2022 ===
* '''[https://levidsmith.com/games/polyglot-pelican/ Polyglot Pelican]''' - Cleaned up menus
* '''[https://levidsmith.com/games/amish-brothers/ Amish Brothers]''' - Updated to Unity version 2021.3.  Improved text and menus.  I developed the original version of Amish Brothers in Unity 4.5 for a 48 hour game jam over nine years ago!  Added hat throwing mechanic.  Updated title and level complete screens.
* '''[https://levidsmith.com/games/eins/ Eins]''' - Posted online playable version to website and uploaded downloadable builds for PC/Mac/Linux to GameJolt and Itch.  There are other things I wanted to add to the game, but I don't think I will get around to it anytime soon so I decided to go ahead and post the game.


[[File:Polyglot-pelican title.jpg|200px|frameless|Polyglot Pelican]] [[File:Amish-brothers 20220705 01.jpg|200px|frameless|Amish Brothers]] [[File:Eins 20220603 06.jpg|200px|frameless|Eins]]


== Screenshots ==
=== May 2022 ===
* Lumi Pegs - a light color peg toy simulation.  Thinking about how to gamify this (make the pictures in a certain amount of time)
[[File:Lumi-pegs 20220605.jpg|200px|frameless|Lumi Pegs]]




'''Screenshots of stable release, version 0.4'''
=== April 2022 ===
* '''[https://levidsmith.com/games/possum-blitz/ Possum Blitz]''' - Game created in Pico-8 for 48 hour game jam


<u>Ubuntu Linux 9.04 compilation</u>
=== March 2022 ===
* '''Eins''' - Added music
* '''Eins''' - Updated graphics


Running under Ubuntu Linux 9.04 Live
=== February 2022 ===
* '''Eins''' - Updated card graphics.  Added additional card types.  Improved card movements.
* '''Eins''' - Working on finishing the rest of the functionality of this game to get it to a releasable state.  Implemented all number cards, skip cards, and reverse cards.  Added highlight feature to show which cards in the player's hand can be played.


[[Image:Lotux ubuntu001.jpg|250px]] [[Image:Lotux ubuntu002.jpg|250px]] [[Image:Lotux ubuntu003.jpg|250px]] [[Image:Lotux ubuntu004.jpg|250px]]
[[File:Eins 20220227 002.jpg|200px|frameless|Eins - In development]] [[File:Eins 20220227 001.jpg|200px|frameless|Eins - In development]] [[File:Eins 20220210 001.JPG|200px|frameless|Eins - In development]]


Running under Mandriva 2010 Live
=== January 2022 ===
* '''VR Putt''' - Three holes completed.  First hole is an L shape.  Second hole is the windmill.  Third hole is the circular ramp.
* '''[https://levidsmith.com/games/nomis/ Nomis]''' - Added leaderboards for Nomis.  Uploaded new web build and posted new desktop build to Itch.io and GameJolt.
* Resolved access management issue with leaderboard management for game
* '''VR Putt''' - Got club and ball collisions working properly.  The trick is to add a rigidbody to the club and freeze all constraints (position on three axes and rotation on three axes).  If the club does not have a rigidbody, collision events with the ball will frequently miss.  When the club collides with the ball, disable the collider on the club (until the next turn or reset).  Otherwise, the club may collide with the ball multiple times, which will feel janky.  Manually apply physics to the ball using AddForce and the normal from the collision between the club and ball.  This makes the hit feel clean but somewhat "arcadey", since there is only one impact point and unrealistic amount of force.  However, it prevents the user from having to swing like a real golf club since only touching the ball with the club is required.  I'm thinking the amount of force the player wants to use can be calculated by how far the grip button is pressed in (if that value is easily accessible).  The physics from the club is essentially eliminated, which was terrible anyway because moving the club with the VR controller doesn't make it act like a "normal" Unity physics object.  Also added HUD display showing number of strokes (recorded by the GameManager) and debug information.  Tried using two cameras (with the HUD camera set to not clear) so that the HUD text is always on top, but it didn't appear to work.  Added two physics materials, one for the ball and one for the ground with friction settings reduce from 0.8 to 0.1.
* '''VR Putt''' - Worked on VR Putt minigolf game using Oculus Quest.  Got new VR project created in Unity using new VR template.  Learned how to get an event when a VR controller button is pressed to reset the ball.  Created club out of two Unity cubes and a ball with Unity sphere.  Parented club to VR controller to make club move with right controller.  Collision between club and ball works, but does not give expected velocity to ball when hit.  This may not be an easily solved issue, so may just detect the collision and add velocity manually so that the club does not have to be swung quickly.
* '''[https://levidsmith.com/games/mutant-veggie-arena/ Mutant Veggie Arena]''' - Updated Mutant Veggie Arena to the latest version of Unity (2020.3.23f1) and Playmaker (1.9.4f2).  Web build now works again (collision issues resolved).
[[File:Nomis 20220108 001.jpg|200px|frameless|Nomis - Leaderboard added]] [[File:Vrputt 20220103 01.jpg|200px|frameless|VR Putt - New club model and HUD]] [[File:Vrputt 20220102 01.jpg|200px|frameless|VR Putt - Initial VR integration]]


[[Image:Lotux mandriva 01.png|250px]] [[Image:Lotux mandriva 02.png|250px]]


<u>Windows compilation</u>


Running under Windows Vista
<!--
[http://eepurl.com/bOKWzL Subscribe to the mailing list to receive updates!]
-->


[[Image:Lotux win 01.jpg|250px]] [[Image:Lotux win 02.jpg|250px]]
<!--
[[File:header.jpg]]
[[File:LevidsmithFlyer.jpg|256px|thumb|right|Levi D. Smith Games flyer]]
-->


== Tools ==


* [[Unity Build Tool]] - Update and build multiple Unity projects at once.  Upload to game hosting sites and more.
* [[Timelapse Maker]] - Make timelapse video from video clips
* [[GitHub Repo Clone]] - Clones all of a GitHub user's public and private repos, including accounts that have 100+ repos.


[[Archived Screenshots]]
== Links ==


== Patch Notes ==
'''Version 0.9 Patch Notes''' (In Development)
*Making an attempt to use OpenGL through SDL for drawing, which will hopefully take advantage of hardware graphics acceleration (cards/chips), so that I can try to get 60 FPS running at 1024x768 resolution;  I tried making a 640x480 low resolution version, but it just didn't look very good at all


'''Playable Games'''
*[https://gamejolt.com/@LeviDSmith/games GameJolt]
*[https://ldsmith.itch.io/ Itch.io]
*[http://www.kongregate.com/games/GaTechGrad Kongregate]
*[http://gatechgrad.newgrounds.com/ Newgrounds]


'''Version 0.8 Patch Notes''' (Stable Release)
'''Social Media'''
*Gamepad and joystick now supported in addition to the keyboard
<!-- *[https://joindiaspora.com/people/9c0b5e689d14e597 Diaspora] -->
*Added license documentation for all the sound effects and music on the [[Adding Music]] page;  I also updated the three sound effects using files from a creative commons library site;  The old sound effects were also free and redistributable, but I can't remember exactly where I got them
<!-- *<s>[https://www.facebook.com/LDSmithGames/ Facebook]</s> -->
*Added new sound effects
*[https://gab.com/ldsmith Gab]
**Menu select
*[https://gettr.com/user/ldsmith42 Gettr]
**Level select
*[https://identi.ca/gatechgrad Identi.ca]
**Sword charge
*[https://www.linkedin.com/in/levidsmith LinkedIn]
**Player Hit
*[https://mastodon.social/@LeviDSmith Mastodon]
**Player Dies
*[https://mewe.com/i/ldsmith42 MeWe]
*Attempt made to reduce CPU usage
*[https://www.minds.com/LeviDSmith Minds]
*Fixed issues when scrolling to the next room
<!-- *[https://parler.com/LDSmith42 Parler] -->
*Now using the SDL_Image library to load images
*[https://truthsocial.com/@ldsmith Truth Social]
*Replaced all BMPs with PNGs (a lot of effort was put into this, with only a smaller distribution package to show for it)
<!-- *<s>[http://twitter.com/ldsmith42 Twitter]</s> -->
**Added transperancy to PNGs that had the magenta color for transperancy, and cleared the magenta color so it is now transperant;  Using "SetColorKey" on a PNG made the program crash, so the magenta color was no longer an option.
**The size of the images on disk is now somewhat smaller, however the program still uses about the same amount of RAM;  Plus, the framerate for some levels (Astro) has dropped (below 30 FPS)
*The sword projectile path now varies depending on the sword charge level;  splits into 2 for a level 2 charge; splits into 4 for a level 3 charge
*Fixed sword display issues and increased the length of the sword
*Added unique enemies for each level, but I haven't done the "attacked" animations yet
*Pasted eyeballs on each of the attacked sprites




'''Video'''
*[https://www.brighteon.com/channel/levidsmith Brighteon]
*[http://www.dailymotion.com/gitcommand Dailymotion]
*[https://dlive.tv/LDSmith DLive]
*[https://vimeo.com/gatechgrad Vimeo]
*[https://odysee.com/@ldsmith:c Odysee]
*[https://rumble.com/user/ldsmith Rumble]
*[http://youtube.com/LeviDSmith YouTube]
*[http://www.twitch.tv/ldsmith42/profile Twitch]


'''Version 0.6 Patch Notes''' (Stable Release)
'''Models'''
*[https://sketchfab.com/ldsmith Sketchfab]


*Added ability to save which levels have been completed by pressing "v" from the title menu;  Pressing "l" on the title menu will load the saved game;  Additional menu options will need to be added
'''Images'''
*Added "Loading" message on startup;  On slower systems, it may take around 30 seconds to load all of the image files
*[http://gatechgrad.deviantart.com/ Deviant Art]
*The player can no longer move while swinging the sword
*[https://www.flickr.com/photos/49990297@N03/ Flickr]
*Fixed collision detection problem of player being able to walk horizontally through an enemy without getting hit
<!-- *[http://gatechgrad.imgur.com/ Imgur] -->
*Got SDL_ttf working, and I wrote my own custom methods to display text to the screen
*[https://www.instagram.com/ldsmith42 Instagram]
*Added level play time and FPS for debugging display at the top of the screen
*[https://www.pinterest.com/LeviDSmithGames/ Pinterest]
*Added unique music for each stage
*[http://ldsmith42.tumblr.com/ Tumblr]
*Added boss music for the last room in each level
*Added Sound Effects
**Sword swing
**Enemy Defeated
**Orb Pickup
*Added charge meter at the top of the screen that fills up as the sword is charged;  Once the meter is full, the charge level increases; There is a current maximum of 3 levels, but currently the charge levels do not produce any different effects


'''Audio'''
*[https://soundcloud.com/ldsmith42/sets SoundCloud]


'''Game Design'''
*[https://ldjam.com/users/levidsmith/ Ludum Dare]
<!-- *[http://ludumdare.com/compo/author/gatechgrad/ Ludum Dare (Legacy)] -->
*[https://www.lexaloffle.com/bbs/?uid=24595#m Lexaloffle (Pico-8)]
*[https://gm48.net/user/182/levi-d-smith GM48]
<!-- *[https://madewith.unity.com/profiles/levi-d-smith-games Made with Unity] -->
*[https://connect.unity.com/u/581976ee32b306001b43cf9a Unity Connect]
<!-- *[https://cartrdge.com/gatechgrad Cartrdge] -->
*[http://www.indiedb.com/company/levi-d-smith IndieDB]
*[https://forums.tigsource.com/index.php?action=profile;u=60715;sa=showPosts TIGSource posts], [https://forums.tigsource.com/index.php?action=profile;u=60715 TIGSource profile]
<!-- *[https://channel9.msdn.com/Niners/LeviDSmith Niners] -->
*[https://github.com/levidsmith GitHub]
*[https://sourceforge.net/u/gatechgrad/profile/ SourceForge]
*[http://www.xboxindies.com/dev/levi-d-smith XBox Indies]
*[https://scratch.mit.edu/users/GaTechGrad/ Scratch]
*[https://www.stencyl.com/users/index/187193 Stencyl]
<!-- *<s>[http://www.gamasutra.com/blogs/LeviSmith/952708/ Gamasutra profile]</s> -->


[[Archived Patch Notes]]
'''Discovery Engine'''
*[http://www.reddit.com/user/GaTechGrad/ Reddit]
<!-- *[https://www.reddit.com/r/LeviDSmithGames/ LD Smith Games Subreddit] -->


== Levels ==
'''Crowdfunding'''
*[https://www.patreon.com/levidsmith Patreon]


Eight levels must be completed to win the game.
'''Profile'''
*[https://about.me/GaTechGrad About.me]
*[https://www.createtn.com/directory/view/levi-smith-617 Create TN]
<!-- *[http://page.is/gatechgrad Page.is] --> <!-- Also http://page.is/levidsmith -->
*[https://speakerdeck.com/levidsmith SpeakerDeck]
*[https://www.quora.com/profile/Levi-D-Smith Quora]
*[https://disqus.com/by/ldsmith42/ Disqus]
*[https://myspace.com/levidsmith MySpace]


[[Image:Levels and items.png|200px]]


== Issues ==
'''Gaming'''
*[https://www.speedrun.com/user/GaTechGrad SpeedRun.com]
<!-- *[http://www.speedrunslive.com/profiles/#!/GaTechGrad/1 SpeedRunsLive] -->
*[https://steamcommunity.com/id/ldsmith Steam]


*If the boomerang hasn't returned to the player when the player moves to another room, then the boomerang will be at the same location in the next room and return to the player
*The player can repeatedly press "F" to shoot the boomerang over again
*Need pause or inventory select screen
*After installing on a new system, it can take 15 to 30 seconds to load the title screen.  Need to add a "loading" screen
**<font color="blue">Loading message added, but a progress bar is also needed</font>
*The first time after downloading the zip from the website, extracting, and running, the program exited after the title screen.  Subsequent attempts have not had the problem
**<font color="blue">Seems to have been an isolated case... I haven't seen this problem again, so it may have been related to the memory leak or other problems that I fixed</font>
*Just noticed that it is possible to walk through horizontal moving snowmen, if the snowman moves through the middle of your body.  The collision algorithm doesn't detect when a smaller object moves through a larger object, without intersecting any of the bounding box vertices.
**<font color="blue">Fixed in version 0.6</font>
*Need unique background music for each stage
**<font color="blue">Added in version 0.6</font>
*Need unique enemies for each stage
**  Astro - aliens
**  Bolt - sparks
**  Desert - Cacti
**  Flame - Devils
**  Frost - Snowmen (the current default enemy for all levels) "SNOWMOBS"
**  Jungle - Iguanas
**  Stone - Golems
**  Mech - Robots
*Need better enemy AI, and differing AI for different types of enemies
** Move 2 or 3 tiles, and then change in random direction (Octorok)
** Wake up and chase when enemy is near (WoW mob/Metal Gear)
** Chase player when player has back turned to enemy (ex SMB "Boo Buddy")
** Jumping Enemy (Tektike)
*Need options screen to change sound/music volume, change control options, etc
*Need ability to save and continue
**<font color="blue">Preliminary save/load code added, but a screen is needed to manage saving and loading files... or implement an autosave feature</font>
*Add additional powerups;  These should be temporary powerups
**Increase attack power
**Invincibility
**Speed Increase
*Add boss enemies
**Boss enemies should be graphically larger than regular enemies
**Boss enemies should have more strategy to defeat then a regular enemy
**Boos enemy should be the last enemy of the stage, and the stage is completed once the boss enemy is defeated
*New enemy killed animation
**Replace the hand drawn cloud when an enemy is defeated with something that looks better... maybe a rendered skull that expands
*Make better level complete screen
*Add two rows of blocks to the tops of all rooms, so that the player won't overlap with the status bar
*Add sound effects
**Sword Swing
**Enemy killed
**Level select: selected level changed, invalid level selected
**Orb pickup
**Player hit
**Boomerang
**<font color="blue">Sword swing, orb pickup, and enemy killed sounds added in version 0.6</font>




*Tried running Legend of Tux on a Windows XP system, but the game screen ran slowly;  The Task Manager reported 98 to 99% CPU usage. Maybe the problem is because I compiled under Vista, but my Vista is running 32 bit. On the other hand, there was barely any loading time to get to the title screen;  On my Windows Vista machine, the CPU usage was about 50% on the title screen, and varied between 18% to 27% on the game loop screens;  Increasing the TICK_INTERVAL from 33 to 100 reduced the CPU usage on the game loop screen to between 6% and 11%, however it was only running at 10 FPS;  I also found that I was missing SDL_Delay statements in my Title screen and Level Select screen;  Adding delays in those loops seemed to bring the overall CPU usage down to the 20-30% range on the Vista machine.
'''Graveyard'''
<!-- *[https://vid.me/levidsmith Vidme] -->
*[https://plus.google.com/+Levidsmith Google+]
*[http://lanyrd.com/profile/levidsmith/ Lanyrd]
*[http://www.onegameamonth.com/GaTechGrad One Game a Month]
*[http://www.stumbleupon.com/stumbler/GaTechGrad StumbleUpon]
*[https://www.path.com/54a93df33be74afbfec0ad7f Path]
<!-- *[https://player.me/ldsmith Player.me] -->


<font color="blue">Removed the drawBlocks code, and reran on the Windows XP system, and it was still running at around 13 fps. I thought that the multiple block blits may have been slowing things down, since the framerate appears to go down in rooms with many blocks</font>
== Created Games ==
'''Games of 2023 '''
* [https://levidsmith.com/games/air-delivery/ Air Delivery]
* [https://levidsmith.com/games/time-labyrinth/ Time Labyrinth]


<font color="blue">Adding SDL_RLEACCEL to the createImage code on SDL_SetColorKey helped reduce the CPU usage on my main development machine from 20-30% down to 5%-10%, so I'm thinking this will help resolve the frame rate issue on my Windows XP machine. However, it causes the room to not scroll anymore when the player transitions form one room to the next... there is just a long pause, then the game speeds up for a few seconds and returns to normal</font>
'''Games of 2022'''
* [https://levidsmith.com/games/possum-blitz/ Possum Blitz]
* [https://levidsmith.com/games/eins/ Eins]
* [https://levidsmith.com/games/old-timer-peg-game/ Old Timer Peg Game]
* [https://levidsmith.com/games/anguis/ Anguis]


<font color="blue">Tried the new build on the Windows XP machine, but it still runs around 19 FPS using 99% of the CPU. I was a little frusterated since other SDL games run at 40+ FPS, but I learned that those games are using OpenGL to render frames, even though they are 2D based. After some reasearch, I learned that graphics processing will only be delegated to the graphics card if the screen is rendered using OpenGL. That could be the reason why the build runs so slowly on that machine, which has a decent graphics card (6600GT I believe), but the CPU is quite old.</font>
'''Games of 2021'''
<!-- 2021 Games -->
* [https://levidsmith.com/games/disc-connect/ Disc Connect]
* [https://levidsmith.com/games/gomen-nasai/ Gomen-Nasai]
* [https://levidsmith.com/games/digmania/ Digmania]
* [https://levidsmith.com/games/morse-code-rescue/ Morse Code Rescue]
* [https://levidsmith.com/games/waiter-extraordinaire/ Chester Servesalot Waiter Extraordinaire]


<font color="blue">I guess I need to make a decision whether to continue to develop using the standard SDL libraries and ignore support for older machines, or reimplement the rendering code to use OpenGL so that the program will run on older machines with graphics cards</font>
'''Games of 2020'''
<!-- 2020 Games -->
* [https://levidsmith.com/games/mister-adventure Mister Adventure]
* [https://levidsmith.com/games/chicken-little Chicken Little]
* [https://levidsmith.com/games/pykoikoi/ Pykoikoi]
* [https://levidsmith.com/games/tangram/ Tangram]
* [https://levidsmith.com/games/circuitus-infinitus/ Circuitus Infinitus]
* [https://levidsmith.com/games/polyglot-pelican/ Polyglot Penguin]


<font color="#008000">Spent a few hours still trying to improve the framerate on the Windows XP system. I ended up basically disabling all images, fonts, event handlers, etc. However, I couldn't get the frame rate above 24 FPS at 1024x768 resolution. I decreased the resolution, and got the frame rate up to around 40 FPS for 800x600, and 60 FPS for 640x480. I would really hate to have to make the program run at such a low resolution, but I've noticed other SDL applications (non-OpenGL) running at 800x600.</font>
'''Games of 2019'''
<!-- 2019 Games -->
* [https://levidsmith.com/games/iro-no-hoiiru Iro no Hoiiru]
* [https://levidsmith.com/games/domino-game Domino Game]
* [https://levidsmith.com/games/yen-master Yen Master]
* [https://levidsmith.com/games/yatzy-dice-game Yatzy Dice Game]
* [https://levidsmith.com/games/space-shooter-improved Space Shooter Improved]
* [https://levidsmith.com/games/mahjong-drop Mahjong Drop]
* [https://levidsmith.com/games/scratch-shooter Scratch Shooter]
* [https://levidsmith.com/games/sdl-shooter SDL Shooter]


<font color="blue">Spent some time trying out and looking at the source code for other other non-OpenGL games on SourceForge;  From the three I tried, they all ran a 640x480 resolution. So maybe there just isn't any way to get an SDL app to run at 60 FPS at 1024x768 resolution on a 1.5 GHz (single CPU)
'''Games of 2018'''
<!-- 2018 Games -->
* [https://levidsmith.com/games/blocks-of-nibiru Blocks of Nibiru]
* [https://levidsmith.com/games/alphabet-soup Alphabet Soup]
* [https://levidsmith.com/games/easter-egg-hunt Easter Egg Hunt]
* [https://levidsmith.com/games/chess-exciting-spectacular-strategy Chess Has Exciting Spectacular Strategy]
* [https://levidsmith.com/games/demolition-madness Demolition Madness]
* [https://levidsmith.com/games/crazy-delivery Crazy Delivery]
* [https://levidsmith.com/games/zekkou-no-tomodachi Zekkou no Tomodachi]
* [https://levidsmith.com/games/nomis Nomis]
* [https://levidsmith.com/games/stratospheric-aerosol-injection Stratospheric Aerosol Injection]


I guess it makes sense (assuming that I'm drawing the entire screen each frame, and not just updating "dirty" rectangles):
'''Games of 2017'''
<!-- 2017 Games -->
* [https://levidsmith.com/games/irwin-mcspenders Irwin McSpenders]
* [https://levidsmith.com/games/turn-back-clocks-4/ Turn Back the Clocks 4]
* [https://levidsmith.com/games/ultrashot Ultrashot]
* [https://levidsmith.com/games/slowbot Slowbot]
* [https://levidsmith.com/games/dual-eagles Dual Eagles]
* [https://levidsmith.com/games/junk-food-blaster Junk Food Blaster]
* [https://levidsmith.com/games/lexip LEXIP]
* [https://levidsmith.com/games/world-fighter World Fighter]
* [https://levidsmith.com/games/miner-madness Miner Madness]
* [https://levidsmith.com/games/note-chomper Note Chomper]
* [https://levidsmith.com/games/sandwich-maker-pro Sandwich Maker Pro]
* [https://levidsmith.com/games/prez Prez]


* 640x480 = 0.31 million pixels to draw to the screen
'''Games of 2016'''
* 800x600 = 0.48 million pixels
<!-- 2016 Games -->
* 1024x768 = 1.33 million pixels
* [https://levidsmith.com/games/free-the-frog Free the Frog]
* [https://levidsmith.com/games/dropping-blocks Dropping Blocks]
* [https://levidsmith.com/games/turn-back-clocks-3 Turn Back the Clocks 3]
* [https://levidsmith.com/games/%e6%9d%b1%e4%ba%ac%e9%83%bd%e5%9c%b0%e4%b8%8b%e9%89%84%e3%82%b7%e3%83%9f%e3%83%a5%e3%83%ac%e3%83%bc%e3%82%bf Subway Simulator]
* [https://levidsmith.com/games/ancient-adventure Ancient Adventure]
* [https://levidsmith.com/games/space-to-destroy Space to Destroy]
* [https://levidsmith.com/games/honey-bear Honey Bear]
* [https://levidsmith.com/games/manifest-universe Manifest Universe]
* [https://levidsmith.com/games/express-lane Express Lane]
* [https://levidsmith.com/games/ichiban-sokoban Ichiban Sokoban]
* [https://levidsmith.com/games/shape-quest Shape Quest]
* [https://levidsmith.com/games/sky-combat Sky Combat]
* [https://levidsmith.com/games/agents-vs-aliens Agents vs Aliens]
* [https://levidsmith.com/games/delivery-kid Delivery Kid]
* [https://levidsmith.com/games/kittys-adventure Kitty's Adventure]


So there is more than 4 times as many pixels that must be drawn to the screen
'''Games of 2015'''
</font>
<!-- 2015 Games -->
* [https://levidsmith.com/games/mutant-veggie-arena Mutant Veggie Arena]
* [https://levidsmith.com/games/christmas-tree-simulator Christmas Tree Simulator]
* [https://levidsmith.com/games/crystal-gridiron Crystal Gridiron]
* [https://levidsmith.com/games/giga-guy Giga Guy]
* [https://levidsmith.com/games/monster-hotel Monster Hotel]
* [https://levidsmith.com/games/jewel-swapper Jewel Swapper]
* [https://levidsmith.com/games/civil-warriors Civil Warriors]
* [https://levidsmith.com/games/swaptroid Swaptroid]
* [https://levidsmith.com/games/bartender-game Bartender Game]
* [https://levidsmith.com/games/expand-o-ray Expand-O-Ray]
* [https://levidsmith.com/games/ccg-wrestling CCG Wrestling]
* [https://levidsmith.com/games/%e9%9d%92%e3%81%84%e4%b8%b8%e3%81%ae%e5%86%92%e9%99%ba 青い丸の冒険] |
* [https://levidsmith.com/games/smilebreaker SmileBreaker]
* [https://levidsmith.com/games/oiram Oiram]
* [https://levidsmith.com/games/%e5%9b%9b%e3%81%ae%e8%89%b2 四の色]
* [https://levidsmith.com/games/marching-band-simulator Marching Band Simulator]


<font color="#008000">Working on adding a low-resolution (640x480) in addition to the standard resolution (1024x768), so that older machines can play a less CPU intensive version of the game.</font>
'''Games of 2014'''
<!-- 2014 Games -->
* [https://levidsmith.com/games/tv-world TV World]
* [https://levidsmith.com/games/bag-boy Bag Boy]
* [https://levidsmith.com/games/free-person-shooter Free Person Shooter]
* [https://levidsmith.com/games/dream-world Dream World]
* [https://levidsmith.com/games/super-buzz Super Buzz]
* [https://levidsmith.com/games/conspiracy-theory Conspiracy Theory]
* [https://levidsmith.com/games/space-dude Space Dude]
* [https://levidsmith.com/games/mindsweep MindSweep]
* [https://levidsmith.com/games/archaeology Archaeology]
* [https://levidsmith.com/games/legend-of-xaeruta Legend of Xaeruta]
* [https://levidsmith.com/games/cyber-ninja Cyber Ninja]
* [https://levidsmith.com/games/tooth-decay Tooth Decay]


*Anyone know how to roll debs?  I could use a tutorial so that I can build a package for Ubuntu
'''Games of 2013'''
<!-- 2013 Games -->
* [https://levidsmith.com/games/tex-oneman Tex Oneman]
* [https://levidsmith.com/games/fifty-flags Fifty Flags]
* [https://levidsmith.com/games/mystic-sword Mystic Sword]
* [https://levidsmith.com/games/tty-gfx-advntr TTY GFX ADVNTR]
* [https://levidsmith.com/games/shark-food Shark Food]
* [https://levidsmith.com/games/bomb-squad Bomb Squad]
* [https://levidsmith.com/games/cruddy-bird Cruddy Bird]
* [https://levidsmith.com/games/ninja-squad-commander Ninja Squad Commander]
* [https://levidsmith.com/games/earthball Earthball]
* [https://levidsmith.com/games/genetic-disorder Genetic Disorder]
* [https://levidsmith.com/games/north-avenue-adventure North Avenue Adventure]
* [https://levidsmith.com/games/amish-brothers Amish Brothers]


*Make the sword appear to be in Tux's hand, instead of floating in front of him;  The length of the sword will probably need to be increased
'''Games of 2012'''
<!-- 2012 Games -->
* [https://levidsmith.com/games/blasting-bits Blasting Bits]
* [https://levidsmith.com/games/hand-full-of-heads Hand Full of Heads]
* [https://levidsmith.com/games/resistor Resistor]


*A sword really doesn't suit Tux... I think I'm going to have him throw snowflakes or snowballs instead;  Maybe a candycane striped pole
'''Older Games'''
<!-- Older Games -->
* [https://levidsmith.com/games/falling-blocks Falling Blocks]
* [https://levidsmith.com/games/tetracity/ TetraCity]
* [https://levidsmith.com/games/legend-of-tux Legend of Tux]


*Have a meter gauge at the top that fills as the player charges the weapon
== Historical Pages ==
**<font color="blue">Added in version 0.6</font>


*Convert BMP files to PNG and add the SDL image library code to read PNG files, so that the amount of disk space used to store images is reduced
*[https://levidsmith.com/historical/games/tekken3.htm Tekken 3 Page]
 
*[https://levidsmith.com/historical/games/soul/soulcal.htm Soul Calibur Domain]
*Is the "arial.ttf" file in the Linux /usr/local/share/fonts directory redistributable?
*[https://levidsmith.com/historical/games/ffvii.htm Final Fantasy VII Online Strategy Guide]
 
*[https://levidsmith.com/historical/games/ffviii.htm Final Fantasy VIII Domain]
*Diagram of the projectile motion I plan on using for the three charge levels (made with Inkscape)
*[https://levidsmith.com/historical/games/tekken_fmv/ Tekken FMV page]
 
*[https://levidsmith.com/historical/homesite/2000 Homesite 2000]
[[Image:Charge levels.png|200px]]
*[https://levidsmith.com/historical/homesite/2005 Homesite 2005]
 
*[https://levidsmith.com/historical/homesite/2008 Homesite 2008]
*Thinking about having the special items as pickups throughout the level... similar to Ninja Gaiden;  That way the player doesn't have to beat the entire level to get a weapon, plus it gives more options for making puzzles
*[https://levidsmith.com/historical/cshistory/jsp/ Computer science history]
 
*[https://levidsmith.com/historical/ufo/ufo.htm UFO page]
*Add ability to move to rooms from top/bottom of the screen
*[https://levidsmith.com/historical/whittling/ Whittling of Glen Smith]
 
*[https://levidsmith.com/historical/cards Greeting cards]
*Game load screen, and add a saving interface
*[https://levidsmith.com/historical/computers Built computers]
 
*[https://levidsmith.com/historical/cards Greeting cards]
*Add more items;  bombs will probably be next, with the ability to destroy certain walls like Bomberman
*[https://levidsmith.com/historical/quark Quark]
 
<!-- *[https://levidsmith.com/historical/vgcollection VG Collection] -->
*Improve enemy AI;  look at AI algorithms/engines
 
 
[[Resolved Issues]]
 
== Software Docs ==
 
Setting up the [[Development Environment]]
 
[[Brainstorming]]
 
[[Requirements Definition]]
 
[[Level Design]]
 
[[Finding Memory Leaks]]
 
[[Adding Music]] (View credits for music and sound effects here)
 
[[Installing on Ubuntu|Installing on Linux]]
 
[[Saving and Loading]]
 
[[Collision Detection]]
 
Setting up [[SDL_ttf]], [[SDL_Image]]
 
[[Influences]]
 
My Zelda Implementation in ClanLib from 2003: [http://www.levidsmith.com/projects/zelda.html Zelda Alpha]
 
[[OpenGL]]
 
== Developers ==
 
[[Levi D Smith]] - Sole designer and developer of Legend of Tux, including level design, object rendering, graphics, and testing

Latest revision as of 23:20, 21 January 2024


This is the Workshop area for the latest project development updates. For the complete listing of released games, please see LD Smith Games.

Updates

January 2024

  • Bag Boy - New release with updated gameplay and graphics

Bag Boy

October 2023

  • Migrated site to new server. Working on getting website components working again. (main site, workshop wiki, leaderboards, historical pages).
  • Looks like I lost the Jetpack stats for the main site. A real disappointment, since it contained visit statistics for almost 10 years.
  • Thinking about putting the leaderboard scores on its own subdomain (such as scores.levidsmith.com), but want to avoid having to update URLs compiled into game projects.
  • Removed many of the old game wiki pages with little information. Current plan is to use the workshop (wiki) for development documentation for new projects, then have the "official" pages on the main levidsmith.com site. That should keep a clear separation between development and release information for projects.
  • Fewer games created this year due to burnout. Want to spend the time I do have on making existing games better and create fewer throwaway projects.

December 2022

Christmas Tree Simulator

October 2022

Old Timer Peg Game

September 2022

  • Weather Lab - Changed name of Turn Back the Clocks to Weather Lab. Added selectable weather stations on a map of the United States. When a station is selected the temperature, wind direction, and wind speed are shown on models of thermometers, wind vane, and anemometer. Additional clocks added. Weather and time zone data pulled from web APIs. Outdoor lighting changes with time and location selected.

Weather Lab


August 2022

Turn Back the Clocks


July 2022

  • Polyglot Pelican - Changed title theme. Fixed issue with enemy spawning after level complete.
  • Shark Food - Fixed leaderboard submit/display. Updated menus. Fixed models/animations to use latest Blender/Unity.

Shark Food

June 2022

  • Polyglot Pelican - Cleaned up menus
  • Amish Brothers - Updated to Unity version 2021.3. Improved text and menus. I developed the original version of Amish Brothers in Unity 4.5 for a 48 hour game jam over nine years ago! Added hat throwing mechanic. Updated title and level complete screens.
  • Eins - Posted online playable version to website and uploaded downloadable builds for PC/Mac/Linux to GameJolt and Itch. There are other things I wanted to add to the game, but I don't think I will get around to it anytime soon so I decided to go ahead and post the game.

Polyglot Pelican Amish Brothers Eins

May 2022

  • Lumi Pegs - a light color peg toy simulation. Thinking about how to gamify this (make the pictures in a certain amount of time)

Lumi Pegs


April 2022

March 2022

  • Eins - Added music
  • Eins - Updated graphics

February 2022

  • Eins - Updated card graphics. Added additional card types. Improved card movements.
  • Eins - Working on finishing the rest of the functionality of this game to get it to a releasable state. Implemented all number cards, skip cards, and reverse cards. Added highlight feature to show which cards in the player's hand can be played.

Eins - In development Eins - In development Eins - In development

January 2022

  • VR Putt - Three holes completed. First hole is an L shape. Second hole is the windmill. Third hole is the circular ramp.
  • Nomis - Added leaderboards for Nomis. Uploaded new web build and posted new desktop build to Itch.io and GameJolt.
  • Resolved access management issue with leaderboard management for game
  • VR Putt - Got club and ball collisions working properly. The trick is to add a rigidbody to the club and freeze all constraints (position on three axes and rotation on three axes). If the club does not have a rigidbody, collision events with the ball will frequently miss. When the club collides with the ball, disable the collider on the club (until the next turn or reset). Otherwise, the club may collide with the ball multiple times, which will feel janky. Manually apply physics to the ball using AddForce and the normal from the collision between the club and ball. This makes the hit feel clean but somewhat "arcadey", since there is only one impact point and unrealistic amount of force. However, it prevents the user from having to swing like a real golf club since only touching the ball with the club is required. I'm thinking the amount of force the player wants to use can be calculated by how far the grip button is pressed in (if that value is easily accessible). The physics from the club is essentially eliminated, which was terrible anyway because moving the club with the VR controller doesn't make it act like a "normal" Unity physics object. Also added HUD display showing number of strokes (recorded by the GameManager) and debug information. Tried using two cameras (with the HUD camera set to not clear) so that the HUD text is always on top, but it didn't appear to work. Added two physics materials, one for the ball and one for the ground with friction settings reduce from 0.8 to 0.1.
  • VR Putt - Worked on VR Putt minigolf game using Oculus Quest. Got new VR project created in Unity using new VR template. Learned how to get an event when a VR controller button is pressed to reset the ball. Created club out of two Unity cubes and a ball with Unity sphere. Parented club to VR controller to make club move with right controller. Collision between club and ball works, but does not give expected velocity to ball when hit. This may not be an easily solved issue, so may just detect the collision and add velocity manually so that the club does not have to be swung quickly.
  • Mutant Veggie Arena - Updated Mutant Veggie Arena to the latest version of Unity (2020.3.23f1) and Playmaker (1.9.4f2). Web build now works again (collision issues resolved).

Nomis - Leaderboard added VR Putt - New club model and HUD VR Putt - Initial VR integration



Tools

  • Unity Build Tool - Update and build multiple Unity projects at once. Upload to game hosting sites and more.
  • Timelapse Maker - Make timelapse video from video clips
  • GitHub Repo Clone - Clones all of a GitHub user's public and private repos, including accounts that have 100+ repos.

Links

Playable Games

Social Media


Video

Models

Images

Audio

Game Design

Discovery Engine

Crowdfunding

Profile


Gaming


Graveyard

Created Games

Games of 2023

Games of 2022

Games of 2021

Games of 2020

Games of 2019

Games of 2018

Games of 2017

Games of 2016

Games of 2015

Games of 2014

Games of 2013

Games of 2012

Older Games

Historical Pages