mirror of
				https://github.com/pelican-eggs/eggs.git
				synced 2025-10-31 08:58:06 +00:00 
			
		
		
		
	Add SuperTuxKart egg (#2823)
* Create egg-super-tux-kart.json * Create ReadMe.md * Update README.md * Update ReadMe.md * Update egg-super-tux-kart.json * Update README.md * Update ReadMe.md * Update egg-super-tux-kart.json * Update ReadMe.md * Update ReadMe.md * Update egg-super-tux-kart.json * more input validation --------- Co-authored-by: Quinten <67589015+QuintenQVD0@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									d9fa481ed4
								
							
						
					
					
						commit
						cb259e4ffa
					
				| @ -349,6 +349,8 @@ If you are reading this it looks like you are looking to add an egg to your serv | ||||
| * [VEIN](game_eggs/steamcmd_servers/vein) | ||||
| * [Wurm Unlimited](game_eggs/steamcmd_servers/wurm_unlimited/) | ||||
| 
 | ||||
| [SuperTuxKart](game_eggs/SuperTuxKart) | ||||
| 
 | ||||
| [Teeworlds](game_eggs/teeworlds) | ||||
| 
 | ||||
| * [Teeworlds](game_eggs/teeworlds/teeworlds) | ||||
|  | ||||
| @ -247,6 +247,8 @@ | ||||
| * [VEIN](steamcmd_servers/vein) | ||||
| * [Wurm Unlimited](steamcmd_servers/wurm_unlimited/) | ||||
| 
 | ||||
| [SuperTuxKart](SuperTuxKart) | ||||
| 
 | ||||
| [Teeworlds](teeworlds) | ||||
| 
 | ||||
| [Terraria](terraria) | ||||
|  | ||||
							
								
								
									
										33
									
								
								game_eggs/SuperTuxKart/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								game_eggs/SuperTuxKart/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| # SuperTuxKart | ||||
| 
 | ||||
| SuperTuxKart is a 3D open-source arcade racer with a variety characters, tracks, and modes to play. | ||||
| 
 | ||||
| ## [Documentation](https://github.com/supertuxkart/stk-code/blob/master/NETWORKING.md) | ||||
| 
 | ||||
| Essentially this is a standard build of the regular SuperTuxKart client but with a special flag when being compiled that produces a GUI-less binary optimized for size and memory usage. | ||||
| 
 | ||||
| ## Install notes | ||||
| 
 | ||||
| First install will take a while because the games source code and assets will be downloaded and the games executable will have to be compiled. | ||||
| 
 | ||||
| ## Installation/System Requirements | ||||
| |  | Bare Minimum | Recommended | | ||||
| |---------|---------|---------| | ||||
| | RAM | 1GiB | 1GiB | | ||||
| | Storage | 3GiB | 5GiB | | ||||
| 
 | ||||
| ## Server Ports | ||||
| 
 | ||||
| | Port    | default | | ||||
| |---------|---------| | ||||
| | Game    | 2759   | | ||||
| 
 | ||||
| ### Notes | ||||
| 
 | ||||
| To change server settings, stop the server then edit the 'config.xml' file in the root of the container. When done save the file and start the server. | ||||
| 
 | ||||
| 2759 is the default port, but any port can be used. You will have to manually change it in the config.xml file. | ||||
| 
 | ||||
| To update the server (only should have to be done when the games code or assets are updated) in panel as an admin go to Servers > SuperTuxKart Server > Manage > Reinstall. If you are a standard user go to SuperTuxKart Server > Settings > Reinstall Server. This will download the updated code/assets (should exclude anything that didn't change) and recompile the executable. | ||||
| 
 | ||||
| Currently this is setup to run a local lan server. To make this a wan server (available in the SuperTuxKart online lobby list) read the document at this link and make the necessary changes to the [startup command](https://github.com/supertuxkart/stk-code/blob/master/NETWORKING.md). | ||||
							
								
								
									
										92
									
								
								game_eggs/SuperTuxKart/egg-super-tux-kart.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								game_eggs/SuperTuxKart/egg-super-tux-kart.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,92 @@ | ||||
| { | ||||
|     "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||||
|     "meta": { | ||||
|         "version": "PTDL_v2", | ||||
|         "update_url": null | ||||
|     }, | ||||
|     "exported_at": "2024-03-24T19:19:23+01:00", | ||||
|     "name": "SuperTuxKart", | ||||
|     "author": "mattamn107@github.com", | ||||
|     "description": "Egg for hosting a SuperTuxKart Server.", | ||||
|     "features": null, | ||||
|     "docker_images": { | ||||
|         "ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian" | ||||
|     }, | ||||
|     "file_denylist": [], | ||||
|     "startup": ".\/bin\/supertuxkart --server-config={{CONFIG_NAME}} --lan-server={{SERVER_NAME}} --network-console --port=\"{{SERVER_PORT}}\" --difficulty={{DIFFICULTY}} --mode={{MODE}} --max-players={{MAX_PLAYERS}} --motd=\"{{MOTD}}\"", | ||||
|     "config": { | ||||
|         "files": "{}", | ||||
|         "startup": "{\r\n    \"done\": \"Available command:\"\r\n}", | ||||
|         "logs": "{}", | ||||
|         "stop": "quit" | ||||
|     }, | ||||
|     "scripts": { | ||||
|         "installation": { | ||||
|             "script": "#!\/bin\/bash\r\n\r\n# Install build tools\r\necho \"deb http:\/\/deb.debian.org\/debian bullseye-backports main\" >> \/etc\/apt\/sources.list && \\\r\napt-get update && apt-get -y full-upgrade && \\\r\n    apt-get install -y build-essential cmake libbluetooth-dev libsdl2-dev \\\r\n    libcurl4-openssl-dev libenet-dev libfreetype6-dev libharfbuzz-dev \\\r\n    libjpeg-dev libogg-dev libopenal-dev libpng-dev \\\r\n    libssl-dev libvorbis-dev libmbedtls-dev pkg-config zlib1g-dev subversion\r\n\r\nif [ ! -d \"\/mnt\/server\/stk-code\" ] && [ ! -d \"\/mnt\/server\/stk-assets\" ]; then\r\n    \r\n    #clone code repo\r\n    git clone https:\/\/github.com\/supertuxkart\/stk-code \/mnt\/server\/stk-code\r\n    \r\n    #get assets\r\n    svn co https:\/\/svn.code.sf.net\/p\/supertuxkart\/code\/stk-assets \/mnt\/server\/stk-assets\r\n    \r\n    # go into the stk-code directory\r\n    cd \/mnt\/server\/stk-code\r\n    \r\n    # create and enter the cmake_build directory\r\n    mkdir cmake_build\r\n    \r\nelse\r\n\r\n    #update existing stuff\r\n    cd \/mnt\/server\/stk-assets\r\n    svn up\r\n    \r\n    cd \/mnt\/server\/stk-code\r\n    git pull\r\n\r\n\r\nfi\r\n\r\n#build the server\r\ncd cmake_build\r\ncmake .. -DSERVER_ONLY=ON\r\nmake\r\n\r\n#copy binary to root\/bin and make it executable\r\nmkdir \/mnt\/server\/bin\r\ncp \/mnt\/server\/stk-code\/cmake_build\/bin\/supertuxkart \/mnt\/server\/bin\/supertuxkart\r\nchmod +x \/mnt\/server\/bin\/supertuxkart\r\n\r\n#copy data folder\r\ncp -r \/mnt\/server\/stk-code\/data \/mnt\/server\/data\r\n\r\n#copy extra assets to data folder\r\ncd \/mnt\/server\/stk-assets\r\ncp -r library models music sfx textures tracks karts \/mnt\/server\/data\/\r\n\r\n# Delete repo's to save disk space.\r\n#rm -rf \/mnt\/server\/stk-code && rm -rf \/mnt\/server\/stk-assets", | ||||
|             "container": "ghcr.io\/parkervcp\/installers:debian", | ||||
|             "entrypoint": "bash" | ||||
|         } | ||||
|     }, | ||||
|     "variables": [ | ||||
|         { | ||||
|             "name": "Server Name", | ||||
|             "description": "The Name of the Server", | ||||
|             "env_variable": "SERVER_NAME", | ||||
|             "default_value": "Pterodactyl_Server", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|string|max:50", | ||||
|             "field_type": "text" | ||||
|         }, | ||||
|         { | ||||
|             "name": "Config File Name", | ||||
|             "description": "Name of the Config File.", | ||||
|             "env_variable": "CONFIG_NAME", | ||||
|             "default_value": "config.xml", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|regex:\/^([\\w\\d._-]+)(\\.xml)$\/", | ||||
|             "field_type": "text" | ||||
|         }, | ||||
|         { | ||||
|             "name": "Mode", | ||||
|             "description": "0 = Normal Race\r\n1 = Time Trial\r\n2 = Battle\r\n3 = Soccer\r\n4 = Follow The Leader\r\n5 = Capture the Flag", | ||||
|             "env_variable": "MODE", | ||||
|             "default_value": "0", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|string|in:0,1,2,3,4,5", | ||||
|             "field_type": "text" | ||||
|         }, | ||||
|         { | ||||
|             "name": "Difficulty", | ||||
|             "description": "Speed of the carts and AI difficulty\r\n0 = Beginner\r\n1 = Intermediate\r\n2 = Expert\r\n3 = SuperTux", | ||||
|             "env_variable": "DIFFICULTY", | ||||
|             "default_value": "0", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|string|in:0,1,2,3", | ||||
|             "field_type": "text" | ||||
|         }, | ||||
|         { | ||||
|             "name": "Max Players", | ||||
|             "description": "How many players can there be in the server.", | ||||
|             "env_variable": "MAX_PLAYERS", | ||||
|             "default_value": "8", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|numeric|between:1,24", | ||||
|             "field_type": "text" | ||||
|         }, | ||||
|         { | ||||
|             "name": "Message of the Day", | ||||
|             "description": "Message of the Day displayed in the server.", | ||||
|             "env_variable": "MOTD", | ||||
|             "default_value": "", | ||||
|             "user_viewable": true, | ||||
|             "user_editable": true, | ||||
|             "rules": "required|string|max:100", | ||||
|             "field_type": "text" | ||||
|         } | ||||
|     ] | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user