diff --git a/.gitignore b/.gitignore index 57940fd..a755ceb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,9 @@ # ---> JetBrains # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - +/Secure/ +/.idea/ +/idea/ # User-specific stuff .idea/**/workspace.xml .idea/**/tasks.xml diff --git a/Account.php b/Account.php new file mode 100644 index 0000000..757fbaf --- /dev/null +++ b/Account.php @@ -0,0 +1,48 @@ + + + + + + Iron Horse Game Development + + + + + + + + +
+
+ +
+
+
+ ©Halbear Networking & Software Ltd 2025 + Visit Halbear.net + HalbearNet User Agreement +
+
+ Support + Forums + User Agreement +
+
+
+ + + + \ No newline at end of file diff --git a/Games.php b/Games.php new file mode 100644 index 0000000..5afd560 --- /dev/null +++ b/Games.php @@ -0,0 +1,112 @@ + + + + + + Iron Horse Game Development + + + + + + + + +
+ ", $Line); + switch($content[0]) { + case "Title": + $Title = $content[1]; + break; + case "BGImage": + if ($MultipleImages){ + $Images = explode("#", $content[1]); + $ImageURL = $Images[0]; + $ImagePreset = file_get_contents("SubPages/Image.html"); + $ImageIterator = 0; + foreach ($Images as $Image) { + $NewImage = str_replace("[imageSRC]", $Images[$ImageIterator], $ImagePreset); + $NewImage = str_replace("[Function]", "'GameDisplay".$index."','".$Images[$ImageIterator], $NewImage); + $ImageList = $ImageList.$NewImage; + $ImageIterator++; + } + } + else $ImageURL = $content[1]; + break; + case "Content": + $Content = $content[1]; + break; + } + } + $iterator++; + $ID = "GameDisplay".$index; + require($NewGame); + $index++; + } + } + ?> + +
+
+ ©Halbear Networking & Software Ltd 2025 + Visit Halbear.net + HalbearNet User Agreement +
+
+ Support + Forums + User Agreement +
+
+
+ + + + \ No newline at end of file diff --git a/Hotbar.php b/Hotbar.php new file mode 100644 index 0000000..d42bf05 --- /dev/null +++ b/Hotbar.php @@ -0,0 +1,17 @@ +
+
+
+ +
+
+
+ +
Iron Horse Software
+
+
+
Games
+
Software
+
Account
+
+
+
\ No newline at end of file diff --git a/SiteAssets/ExpeditionEmberleaf.gif b/SiteAssets/ExpeditionEmberleaf.gif new file mode 100644 index 0000000..3f9be04 Binary files /dev/null and b/SiteAssets/ExpeditionEmberleaf.gif differ diff --git a/SiteAssets/ExpeditionEmberleaf2.png b/SiteAssets/ExpeditionEmberleaf2.png new file mode 100644 index 0000000..e42b9fa Binary files /dev/null and b/SiteAssets/ExpeditionEmberleaf2.png differ diff --git a/SiteAssets/ExpeditionEmberleaf3.png b/SiteAssets/ExpeditionEmberleaf3.png new file mode 100644 index 0000000..f9b3a45 Binary files /dev/null and b/SiteAssets/ExpeditionEmberleaf3.png differ diff --git a/SiteAssets/ExpeditionEmberleaf4.png b/SiteAssets/ExpeditionEmberleaf4.png new file mode 100644 index 0000000..9705cce Binary files /dev/null and b/SiteAssets/ExpeditionEmberleaf4.png differ diff --git a/SiteAssets/FrugerImage.png b/SiteAssets/FrugerImage.png new file mode 100644 index 0000000..f9d5e10 Binary files /dev/null and b/SiteAssets/FrugerImage.png differ diff --git a/SiteAssets/GDtext.png b/SiteAssets/GDtext.png new file mode 100644 index 0000000..d3660fa Binary files /dev/null and b/SiteAssets/GDtext.png differ diff --git a/SiteAssets/IHlogo.png b/SiteAssets/IHlogo.png new file mode 100644 index 0000000..8875932 Binary files /dev/null and b/SiteAssets/IHlogo.png differ diff --git a/SiteAssets/IHtext.png b/SiteAssets/IHtext.png new file mode 100644 index 0000000..148f703 Binary files /dev/null and b/SiteAssets/IHtext.png differ diff --git a/SiteAssets/Isotiler.png b/SiteAssets/Isotiler.png new file mode 100644 index 0000000..dc36e76 Binary files /dev/null and b/SiteAssets/Isotiler.png differ diff --git a/SiteAssets/IsotilerFull.png b/SiteAssets/IsotilerFull.png new file mode 100644 index 0000000..f525b32 Binary files /dev/null and b/SiteAssets/IsotilerFull.png differ diff --git a/SiteAssets/LostContact.png b/SiteAssets/LostContact.png new file mode 100644 index 0000000..20c976a Binary files /dev/null and b/SiteAssets/LostContact.png differ diff --git a/SiteAssets/LostContact2.png b/SiteAssets/LostContact2.png new file mode 100644 index 0000000..c219054 Binary files /dev/null and b/SiteAssets/LostContact2.png differ diff --git a/SiteAssets/LostContactInSpace.png b/SiteAssets/LostContactInSpace.png new file mode 100644 index 0000000..cf5695a Binary files /dev/null and b/SiteAssets/LostContactInSpace.png differ diff --git a/SiteAssets/PBTerrain.png b/SiteAssets/PBTerrain.png new file mode 100644 index 0000000..d201f55 Binary files /dev/null and b/SiteAssets/PBTerrain.png differ diff --git a/SiteAssets/PBTerrain2.png b/SiteAssets/PBTerrain2.png new file mode 100644 index 0000000..263fcc9 Binary files /dev/null and b/SiteAssets/PBTerrain2.png differ diff --git a/SiteAssets/PBbuild.png b/SiteAssets/PBbuild.png new file mode 100644 index 0000000..1986b6d Binary files /dev/null and b/SiteAssets/PBbuild.png differ diff --git a/SiteAssets/Terrain4.png b/SiteAssets/Terrain4.png new file mode 100644 index 0000000..e2a32df Binary files /dev/null and b/SiteAssets/Terrain4.png differ diff --git a/SiteAssets/Terrain4J.png b/SiteAssets/Terrain4J.png new file mode 100644 index 0000000..4091e8d Binary files /dev/null and b/SiteAssets/Terrain4J.png differ diff --git a/SiteAssets/TilesetSplitter.png b/SiteAssets/TilesetSplitter.png new file mode 100644 index 0000000..1789c81 Binary files /dev/null and b/SiteAssets/TilesetSplitter.png differ diff --git a/SiteAssets/Town.png b/SiteAssets/Town.png new file mode 100644 index 0000000..cce88aa Binary files /dev/null and b/SiteAssets/Town.png differ diff --git a/SiteAssets/WorldImageFull.png b/SiteAssets/WorldImageFull.png new file mode 100644 index 0000000..da00043 Binary files /dev/null and b/SiteAssets/WorldImageFull.png differ diff --git a/SiteAssets/ihbanner1.png b/SiteAssets/ihbanner1.png new file mode 100644 index 0000000..7ca78eb Binary files /dev/null and b/SiteAssets/ihbanner1.png differ diff --git a/SiteAssets/ihgd.png b/SiteAssets/ihgd.png new file mode 100644 index 0000000..66e1cb1 Binary files /dev/null and b/SiteAssets/ihgd.png differ diff --git a/SiteAssets/spaceship.png b/SiteAssets/spaceship.png new file mode 100644 index 0000000..9f85712 Binary files /dev/null and b/SiteAssets/spaceship.png differ diff --git a/SiteAssets/warhorse.png b/SiteAssets/warhorse.png new file mode 100644 index 0000000..0e80db1 Binary files /dev/null and b/SiteAssets/warhorse.png differ diff --git a/SiteAssets/warhorse2.png b/SiteAssets/warhorse2.png new file mode 100644 index 0000000..f47366c Binary files /dev/null and b/SiteAssets/warhorse2.png differ diff --git a/SiteAssets/warhorse3.png b/SiteAssets/warhorse3.png new file mode 100644 index 0000000..46d30b1 Binary files /dev/null and b/SiteAssets/warhorse3.png differ diff --git a/SiteAssets/warhorse4.png b/SiteAssets/warhorse4.png new file mode 100644 index 0000000..875aad3 Binary files /dev/null and b/SiteAssets/warhorse4.png differ diff --git a/SiteAssets/warhorseinengine.png b/SiteAssets/warhorseinengine.png new file mode 100644 index 0000000..a88bcb0 Binary files /dev/null and b/SiteAssets/warhorseinengine.png differ diff --git a/Software.php b/Software.php new file mode 100644 index 0000000..d1c6508 --- /dev/null +++ b/Software.php @@ -0,0 +1,107 @@ + + + + + + Iron Horse Game Development + + + + + + + + +
+ ", $Line); + switch($content[0]) { + case "Title": + $Title = $content[1]; + break; + case "BGImage": + if ($MultipleImages){ + $Images = explode("#", $content[1]); + $ImageURL = $Images[0]; + $ImagePreset = file_get_contents("SubPages/Image.html"); + $ImageIterator = 0; + foreach ($Images as $Image) { + $NewImage = str_replace("[imageSRC]", $Images[$ImageIterator], $ImagePreset); + $NewImage = str_replace("[Function]", "'GameDisplay".$index."','".$Images[$ImageIterator], $NewImage); + $ImageList = $ImageList.$NewImage; + $ImageIterator++; + } + } + else $ImageURL = $content[1]; + break; + case "Content": + $Content = $content[1]; + break; + } + } + $iterator++; + $ID = "GameDisplay".$index; + require($NewGame); + $index++; + } + } + ?> + +
+
+ ©Halbear Networking & Software Ltd 2025 + Visit Halbear.net + HalbearNet User Agreement +
+
+ Support + Forums + User Agreement +
+
+
+ + + + \ No newline at end of file diff --git a/StyleSheets/MainStyle.css b/StyleSheets/MainStyle.css new file mode 100644 index 0000000..0e95080 --- /dev/null +++ b/StyleSheets/MainStyle.css @@ -0,0 +1,213 @@ + +.lexend{ + font-family: "Lexend", sans-serif; + font-optical-sizing: auto; + font-weight: 600; + font-style: normal; +} +.dotgothic16-regular { + font-family: "DotGothic16", sans-serif; + font-weight: 400; + font-style: normal; +} +.boldonse-regular { + font-family: "Boldonse", system-ui; + font-weight: 400; + font-style: normal; +} +.ContentWindow{ + backdrop-filter: blur(15px) brightness(80%); + border: 0.35vh solid rgba(250,250,250,0.2); + padding-top: 1vh; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; +} +.ContentPage{ + transition: background 0.5s linear; + background-size: cover; + background-repeat: no-repeat; + background-position: center; + width: 100%; + height: 100vh; +} +.GameDisplayImage{ + border-radius: 2vh; + cursor:pointer; + opacity: 0.65; + transition: 0.5s; +} +.GameDisplayImage:hover { + Z-index: 10; + opacity: 1; + transform: scale(1.2); + transition: 0.5s; +} +.HotbarContainer{ + top: 0; + left: 0; + position: fixed; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + height: 10vh; + width: 100vw; + transition: 0.5s; + .HotbarBackgrounds{ + height: 10vh; + } + .backgroundBlur{ + height: 10vh; + } + .HotbarContent{ + height: 10vh; + } +} +.HotbarBackgrounds{ + backdrop-filter: blur(5px) brightness(80%); + overflow: clip; + border-bottom: 3px solid rgba(250,250,250,0.1); + box-shadow: 0px 10px 10px rgba(250,250,250,0.025); + transition: 0.5s; + top: 0; + left: 0; + position: absolute; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + width: 100vw; +} +.IHBanner{ + transition: 0.5s; + height: 100%; + width: auto; + transform: translateX(0); +} +.HotbarContainer:hover{ + transition: 0.5s; + height: 13vh; + .IHLogo{ + width: 13vh; + height: 13vh; + } + .Title{ + font-size: 3.5vh; + } + .HotbarButton{ + font-size: 2.5vh; + } + .HotbarBackgrounds{ + backdrop-filter: blur(15px) brightness(90%); + height: 15vh; + box-shadow: 0px 10px 10px rgba(250,250,250,0.1); + .IHBanner{ + transform: translateX(15vh); + } + } + .backgroundBlur{ + height: 15vh; + } + .HotbarContent{ + height: 15vh; + } + .RightHotbar{ + transition: 0.5s; + margin-right: 7vh; + } +} +body{ + background-color: rgba(20,5,35); + margin: 0; + padding: 0; +} +.Content{ + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + z-index: -1; + overflow-x: clip; + position: absolute; + width: 100%; + margin: 0; + padding: 0; +} +@media only screen and (min-aspect-ratio: 16/8) { + .BGImage { + width: 100% !important; + height: auto !important; + } +} +@media only screen and (max-aspect-ratio: 16/9) { + .BGImage { + width: auto!important; + height: 100vh!important; + } +} +.BGImage{ + overflow-x: hidden; + margin: 0; + padding: 0; +} +.WhiteContentFont{ + color: white; + font-family: "Lexend", sans-serif; + font-size: 2.5vh; +} +.Title{ + transition: 0.5s; + color: white; + font-family: "Boldonse", system-ui; + font-size: 3vh; +} +.HotbarButton:hover{ + border-bottom: 0.75vh solid white; + transform: scale(1.1); +} +.HotbarButton{ + border-bottom: 0 solid white; + cursor: pointer; + color: white; + font-family: "Boldonse", system-ui; + font-size: 2vh; +} +.LeftHotbar{ + margin-left: 1vh; +} +.RightHotbar{ + transition: 0.5s; + margin-right: 5vh; +} +.IHLogo { + transition: 0.5s; + height: 10vh; + width: 10vh; +} +.LeftContent{ + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} +.RightContent{ + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} +.HotbarContent{ + overflow: clip; + border-bottom: 0.35vh solid rgba(250,250,250,0.1); + transition: 0.5s; + top: 0; + left: 0; + position: absolute; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + width: 100vw; +} diff --git a/SubPages/Games/A!_LostContact.html b/SubPages/Games/A!_LostContact.html new file mode 100644 index 0000000..c07b63b --- /dev/null +++ b/SubPages/Games/A!_LostContact.html @@ -0,0 +1,3 @@ +Title->Lost Contact +BGImage->LostContact.png');#LostContactInSpace.png');#FrugerImage.png');#LostContact2.png'); +Content->Lost Contact is a space survival adventure game currently being developed in Unreal Engine 5.6 with C++, the content planned includes multiple different procedurally generate planets to explore and survive in with a modular space ship building system and open space combat


Release Date: TBA

Platforms: Windows, PlayStation

Game Engine: Unreal Engine 5.6 \ No newline at end of file diff --git a/SubPages/Games/B!_WarHorse.html b/SubPages/Games/B!_WarHorse.html new file mode 100644 index 0000000..dc62f64 --- /dev/null +++ b/SubPages/Games/B!_WarHorse.html @@ -0,0 +1,3 @@ +Title->War Horse +BGImage->warhorse.png');#warhorse2.png');#warhorse3.png');#warhorse4.png'); +Content->War Horse is a train game about driving a highly simulated train through an active warzone to deliver critical resources to support your side of the war, the game has challenging resource management as you have to watch your RPM, Fuel, Oil, Water and temperature to make sure your train operates correctly!


Release Date: Q4 2027

Platforms: Windows, Linux, MacOS

Game Engine: previously Roblox Studio, to be moved to proprietary engine Terrain4J \ No newline at end of file diff --git a/SubPages/Games/C!_PlaneBuilding.html b/SubPages/Games/C!_PlaneBuilding.html new file mode 100644 index 0000000..758cae9 --- /dev/null +++ b/SubPages/Games/C!_PlaneBuilding.html @@ -0,0 +1,3 @@ +Title->Plane Building +BGImage->PBTerrain.png');#PBTerrain2.png');#Town.png');#PBbuild.png'); +Content->Plane Building is a massively multiplayer, complex and computational vehicle building game with the goal to create vehicles to traverse an expansive and stunning generated open world, it features tech like logic gates, programmable units and fluid dynamics, as well as having fully simulated aerodynamics! Build anything from planes, to ships and even walking mechs!

Initial Release Date: Q4 2022

Platforms: Windows, Linux, MacOS, Android, IOS

Game Engine: Roblox Studio

Play online on roblox:Click Here
\ No newline at end of file diff --git a/SubPages/Games/D!_ExpeditionEmberleaf.html b/SubPages/Games/D!_ExpeditionEmberleaf.html new file mode 100644 index 0000000..ec24b9d --- /dev/null +++ b/SubPages/Games/D!_ExpeditionEmberleaf.html @@ -0,0 +1,3 @@ +Title->Expedition Emberleaf +BGImage->ExpeditionEmberleaf.gif');#ExpeditionEmberleaf2.png');#ExpeditionEmberleaf3.png');#ExpeditionEmberleaf4.png'); +Content->Expedition Emberleaf is a 2d side scrolling adventure combat game in a steampunk fantasy world with parkour, it utilises an open world explored using airships to find the 'levels' to explore in!


Release Date: TBA

Platforms: Windows, PlayStation

Game Engine: Unreal Engine 5.6 \ No newline at end of file diff --git a/SubPages/Games/E!_Isotiler.html b/SubPages/Games/E!_Isotiler.html new file mode 100644 index 0000000..0bffcef --- /dev/null +++ b/SubPages/Games/E!_Isotiler.html @@ -0,0 +1,3 @@ +Title->Isotiler +BGImage->IsotilerFull.png'); +Content->Isotiler (Temporary name) is an experimental 2D game using isometric projection to create a 3d voxel gameplay style


Release Date: Q4 2026

Platforms: Windows, Linux

Game Engine: Proprietary engine Terrain4 to be upgraded to Terrain4J \ No newline at end of file diff --git a/SubPages/Image.html b/SubPages/Image.html new file mode 100644 index 0000000..e4eef5b --- /dev/null +++ b/SubPages/Image.html @@ -0,0 +1 @@ +
\ No newline at end of file diff --git a/SubPages/LeftSide.php b/SubPages/LeftSide.php new file mode 100644 index 0000000..f295fef --- /dev/null +++ b/SubPages/LeftSide.php @@ -0,0 +1,9 @@ +
+
+
+ + +
+
+
+
\ No newline at end of file diff --git a/SubPages/LeftSideMultiImage.php b/SubPages/LeftSideMultiImage.php new file mode 100644 index 0000000..5562817 --- /dev/null +++ b/SubPages/LeftSideMultiImage.php @@ -0,0 +1,12 @@ +
+
+
+ + +
+
+
+
+ +
+
\ No newline at end of file diff --git a/SubPages/RightSide.php b/SubPages/RightSide.php new file mode 100644 index 0000000..8f5cb8d --- /dev/null +++ b/SubPages/RightSide.php @@ -0,0 +1,9 @@ +
+
+
+ + +
+
+
+
\ No newline at end of file diff --git a/SubPages/RightSideMultiImage.php b/SubPages/RightSideMultiImage.php new file mode 100644 index 0000000..895cdef --- /dev/null +++ b/SubPages/RightSideMultiImage.php @@ -0,0 +1,12 @@ +
+
+
+ + +
+
+
+
+ +
+
\ No newline at end of file diff --git a/SubPages/Software/A!_Terrain4J.html b/SubPages/Software/A!_Terrain4J.html new file mode 100644 index 0000000..a75b748 --- /dev/null +++ b/SubPages/Software/A!_Terrain4J.html @@ -0,0 +1,3 @@ +Title->Terrain4J Vulkan Engine +BGImage->Terrain4J.png'); +Content->Terrain4J is a 3D Vulkan game engine based on Javas LWJGL 3 library


Terrain4J is a proprietary engine for Iron Horse Game Development and was developed by HalbearNet primarily \ No newline at end of file diff --git a/SubPages/Software/B!_Terrain4.html b/SubPages/Software/B!_Terrain4.html new file mode 100644 index 0000000..9e47c1e --- /dev/null +++ b/SubPages/Software/B!_Terrain4.html @@ -0,0 +1,3 @@ +Title->Terrain4 C# GDI+ Engine +BGImage->Terrain4.png'); +Content->Terrain4 is a 2D GDI+ game engine based on Windows Forms, it uses multiple threads to construct frames to get around the performance limitations of GDI+ drawing


Terrain4 will eventually be publicly available for people to use to learn C# and windows forms, it is not a good substitute for mainstream engines like Unity and Unreal however \ No newline at end of file diff --git a/SubPages/Software/C!_TilesetSplitter.html b/SubPages/Software/C!_TilesetSplitter.html new file mode 100644 index 0000000..cdf061b --- /dev/null +++ b/SubPages/Software/C!_TilesetSplitter.html @@ -0,0 +1,3 @@ +Title->Tileset Splitter +BGImage->TilesetSplitter.png'); +Content->Tileset Splitter is a Windows app to import, crop and export tilesets as individual textures for ease of use, if you need to export individual frames of an animation strip with aseprite but want to save time you can use this handy software to chop up the tileset instead of exporting each frame individually! the software automatically detects if your tileset is vertical, horizontal, or packed based on the resolution you input!


Released: 05/12/2025
Platforms: Windows

Download:

Currently unavailable due to Halbear.Net rewrite in progress

\ No newline at end of file diff --git a/android-chrome-192x192.png b/android-chrome-192x192.png new file mode 100644 index 0000000..f0dec6f Binary files /dev/null and b/android-chrome-192x192.png differ diff --git a/android-chrome-512x512.png b/android-chrome-512x512.png new file mode 100644 index 0000000..211b537 Binary files /dev/null and b/android-chrome-512x512.png differ diff --git a/apple-touch-icon.png b/apple-touch-icon.png new file mode 100644 index 0000000..6193dee Binary files /dev/null and b/apple-touch-icon.png differ diff --git a/favicon-16x16.png b/favicon-16x16.png new file mode 100644 index 0000000..f148064 Binary files /dev/null and b/favicon-16x16.png differ diff --git a/favicon-32x32.png b/favicon-32x32.png new file mode 100644 index 0000000..1fdfd6d Binary files /dev/null and b/favicon-32x32.png differ diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000..817faaa Binary files /dev/null and b/favicon.ico differ diff --git a/index.php b/index.php new file mode 100644 index 0000000..5a2c515 --- /dev/null +++ b/index.php @@ -0,0 +1,68 @@ + + + + + + Iron Horse Game Development + + + + + + + + + + + + +
+
+ +
+
+ +
+
+
+ ©Halbear Networking & Software Ltd 2025 + Visit Halbear.net + HalbearNet User Agreement +
+
+ Support + Forums + User Agreement +
+
+
+ + + + \ No newline at end of file diff --git a/site.webmanifest b/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file