Compare commits

..

15 commits

Author SHA1 Message Date
RandomityGuy
59c0842e64 update rreadme for mbg update 2026-06-16 01:38:54 +01:00
RandomityGuy
3d3f7b816a add info about the linux port 2026-06-15 18:11:14 +01:00
RandomityGuy
cde152c6a1 add steam deck conf 2026-06-15 17:34:44 +01:00
RandomityGuy
5698770502 linux define 2026-06-15 14:05:21 +01:00
RandomityGuy
ee23828f4d add linux support 2026-06-15 13:42:21 +01:00
RandomityGuy
6b32f92d4d update readme for iOS version 2026-06-15 02:25:07 +01:00
RandomityGuy
9b4d8a9b5e - fix some loading issues on web
- now properly load bitmaps via browser api instead for js
- fix negative material values not handled
- fix multiplayer not loading with multiple people on web
2026-05-21 14:55:08 +01:00
RandomityGuy
786dcb169e fix this texture load lagspike issue 2026-05-15 02:30:43 +01:00
RandomityGuy
717d4eb5c6 update readme 2026-04-06 22:42:11 +01:00
RandomityGuy
6fd8d12386 next update 2026-04-06 13:24:40 +01:00
RandomityGuy
6ffd04038c fix chat escaping 2026-04-06 12:31:24 +01:00
RandomityGuy
7a648a8aeb this button too 2026-04-05 02:40:36 +01:00
RandomityGuy
14c7885f58 this last change 2026-04-03 17:33:49 +01:00
RandomityGuy
1ec04251e8 update changelog 2026-04-03 00:22:31 +01:00
RandomityGuy
d7b1e68b21 try this to make them be singleplayer 2026-04-02 20:46:13 +01:00
4981 changed files with 287113 additions and 43459 deletions

View file

@ -268,7 +268,7 @@ jobs:
command: |
cd ~/MBHaxe
./package-macos.sh v$COMMIT_TAG
cd "macos-dist/MarbleBlast Gold.app/Contents/MacOS"
cd "macos-dist/MarbleBlast Platinum.app/Contents/MacOS"
otool -L marblegame
cd ../Frameworks
cp /usr/local/lib/{ui.hdll,openal.hdll,fmt.hdll,sdl.hdll,libSDL2-2.0.0.dylib,ssl.hdll,uv.hdll,datachannel.hdll} .
@ -292,27 +292,27 @@ jobs:
name: Sign app bundle
command: |
cd ~/MBHaxe/macos-dist
xattr -rc "MarbleBlast Gold.app"
cp "MarbleBlast Gold.app/Contents/Entitlements.plist" .
codesign --deep --entitlements Entitlements.plist -fs - "MarbleBlast Gold.app"
xattr -rc "MarbleBlast Platinum.app"
cp "MarbleBlast Platinum.app/Contents/Entitlements.plist" .
codesign --deep --entitlements Entitlements.plist -fs - "MarbleBlast Platinum.app"
- run:
name: ZIP Bundle
command: |
cd ~/MBHaxe/macos-dist
npm install -g create-dmg
create-dmg --dmg-title="Marble Blast Gold" "MarbleBlast Gold.app" || true
rm -rf "macos-dist/MarbleBlast Gold.app.in"
mv "marblegame vpipeline.git.tag.dmg" "MBHaxe-Gold-Mac.dmg"
create-dmg --dmg-title="Marble Blast Platinum" "MarbleBlast Platinum.app" || true
rm -rf "macos-dist/MarbleBlast Platinum.app.in"
mv "marblegame vpipeline.git.tag.dmg" "MBHaxe-Platinum-Mac.dmg"
# zip -r MBHaxe-Ultra-Mac.zip macos-dist/
- run:
name: Upload to Artifact Storage
command: |
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/MBHaxe/macos-dist/MBHaxe-Gold-Mac.dmg $REMOTEDIR/MBHaxe-Gold-Mac.dmg
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/MBHaxe/macos-dist/MBHaxe-Platinum-Mac.dmg $REMOTEDIR/MBHaxe-Platinum-Mac.dmg
# - store_artifacts:
# path: ~/MBHaxe/MBHaxe-Gold-Mac.zip
# path: ~/MBHaxe/MBHaxe-Platinum-Mac.zip
build-win:
executor:
@ -443,14 +443,14 @@ jobs:
name: Zip bundle
command: |
cd ~/project
7z a MBHaxe-Gold-Win.zip release/
7z a MBHaxe-Platinum-Win.zip release/
- run:
name: Upload to Artifact Storage
command: |
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/project/MBHaxe-Gold-Win.zip $REMOTEDIR/MBHaxe-Gold-Win.zip
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/project/MBHaxe-Platinum-Win.zip $REMOTEDIR/MBHaxe-Platinum-Win.zip
# - store_artifacts:
# path: ~/project/MBHaxe-Gold-Win.zip
# path: ~/project/MBHaxe-Platinum-Win.zip
build-lin:
docker:
@ -577,7 +577,7 @@ jobs:
- run:
name: Package portable bundle
command: |
DIST=$HOME/MBHaxe-Gold-Linux
DIST=$HOME/MBHaxe-Platinum-Linux
mkdir -p "$DIST"
# Native binary
@ -671,14 +671,14 @@ jobs:
ln -sf libhl.so.1 libhl.so
cd $HOME
tar -czvf MBHaxe-Gold-Linux.tar.gz MBHaxe-Gold-Linux
tar -czvf MBHaxe-Platinum-Linux.tar.gz MBHaxe-Platinum-Linux
- run:
name: Upload to Artifact Storage
command: |
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT \
$HOME/MBHaxe-Gold-Linux.tar.gz \
$REMOTEDIR/MBHaxe-Gold-Linux.tar.gz
$HOME/MBHaxe-Platinum-Linux.tar.gz \
$REMOTEDIR/MBHaxe-Platinum-Linux.tar.gz

View file

@ -1,111 +1,173 @@
# 1.1.13
This update brings feature and bugfix parity with the latest MBP version:
- Fixed a ton of bugs that were fixed in MBP since the last update.
- Updated the options menu to have more meaningful options and add more options for touch controls.
# 1.7.3
Hotfix time!
- Fixed chat messages being escaped a bit too much.
# 1.7.2
This update brings the following bugfixes:
- Added Import and Export Progress to Options menu to transfer game progress between devices.
- Added momentum based scrolling on touch devices for menus.
- Added TURN server support for multiplayer. Players behind strict NATs should now be able to play multiplayer without issues.
- Made the game files to be case insensitive to allow running the game on case sensitive filesystems without issues.
- Escaped all user input to prevent HTML injection in the UI.
- Fixed various race condition issues.
- Improved camera sensitivity on touch devices.
- Implemented camera centering for touch controls when free look is disabled.
- Various performance improvements and crash fixes.
- Implemented console cheat commands. DefaultMarble.attribute = value; to change marble attributes.
- Fixed a bug with the timer when playing a replay.
- Fixed a crash that could happen in multiplayer.
- Fixed not being able to load textures in certain custom levels.
- Fixed softlock when playing a user installed custom level.
- Fixed gravity changes not rewinding properly.
- Fixed skies not rendering correctly at times in the web version.
# 1.1.12
# 1.7.1
This update brings the following bugfixes:
- Fixed a crash when the marble goes out of bounds.
- Fixed the FPS limiter not limiting rendered frames per second.
- Fixed scores not being sent in certain cases.
# 1.7.0
It's the fabled Leaderboards update!
Leaderboards have been implemented for all the levels with automatic replay uploading for official levels as well as watching top replays. Additionally, segregation has been made to allow switching between rewind and non-rewind scores on the leaderboards.
Changes:
- Added an FPS limiter in the settings.
- Added custom friction support as well as custom marble attributes. Now levels can modify the marble's physics parameters to their liking.
- Improved level select persistence. Now your last chosen level will be displayed on quitting or finishing a level instead of last level in a category.
- Improved the Gem Hunt algorithm to match closer to PlatinumQuest's.
- Trigger detection now matches with the original game.
- Camera is now smoothened.
- Fixed camera not pointing at gems after respawn in Multiplayer.
- Fixed Superspeed powerup sometimes throwing you in the wrong direction in Multiplayer.
- Fixed the marble being wonky at times in replays.
- Fixed an interaction with Random powerup giving Time Travels.
- Fixed some collision issues with moving platforms.
# 1.6.1
This update fixes the following bugs:
- Fixed marble phasing through interiors when going too fast
- Fixed jittery interaction with marble and moving platforms
- Fixed a crash when there are more players than spawnpoints in multiplayer.
- Fixed minor UI bugs with kicking and player list.
- Prevent timing out of players who are still loading the level.
- Fixed sort order of two multiplayer levels.
- Attempted to improve performance when someone joins mid-game.
- Touch Controls: Pressing pause now releases the joystick.
# 1.1.11
This update brings the following fixes:
- Minor UI changes.
# 1.6.0
A big update! Bringing in the cross platform multiplayer the way it was meant to be played!
Please note that it is always and always recommended to download the native client for unlocked FPS and higher performance.
- Added cross platform multiplayer, the Online button is now unlocked.
- Gem Hunt Free-for-all only, no other game modes are present.
- Server authoritative marble physics and rollback netcode for all gameplay elements - including moving platforms.
- Up to 8 players due to platform technical limitations.
- Seamless multiplayer custom levels integration through Marbleland.
- Spectator mode is implemented but lasts until the end of match.
- Four PlatinumQuest levels that were present in MBP multiplayer have been added along with their shaders.
- Added the Ability to toggle between old spawns and new spawns for certain multiplayer maps.
- Added Competitor Mode:
- A new gem spawn will happen automatically after a certain duration depending on number of gems picked up.
- Reduced Mega Marble duration.
- Only Ultra Blasts can affect marbles.
- Fixed starting point.
- Touch controls improvements:
- Configure visibility of On-Screen Controls
- Configure behavior of buttons acting as camera joystick by altering Button Camera Factor
- Configure your camera sensitivity and swipe extent.
- Improved touch camera sensitivity a bit.
- Added Dynamic Joystick for Touch Controls.
- Added support for iOS for the web version.
- Improved Controller support for Android.
- Optimized the game to run at much higher framerates.
- Improved marble shadow.
- Fixed certain customs missing interiors/textures.
- Fixed marble collision at varying radii.
- Fixed Super Speed throwing you in the wrong direction.
# 1.5.4
This update fixes the following bugs:
- Updated Marbleland support. New levels will now automatically show up.
- Implement "Latest" and "Alphabetical" sorting for Marbleland customs.
- Optimized rewind to use memory better.
- Fixed a handful of memory leaks.
- Match with MBG Collision code.
# 1.1.10
This update brings the following fixes:
- Fixed marble finish animation not working.
- Fixed camera movement at varying FPS and sensitivities.
- Minor performance improvements.
# 1.1.9
# 1.5.3
This update fixes the following bugs:
- Slightly improved marble cubemaps.
- Fixed camera movement for varying FPS and sensitivities.
- Fixed rolling sound bug.
# 1.5.2
- Updated Marbleland integration link to the new site.
# 1.5.1
This update fixes the following bugs:
- Fixed bugs caused by rewinding past the level start.
- Fixed crash caused by traplaunch.
- Removed the ability to rewind if you finished the level.
- Fixed a bug concerning moving platform collisions.
- Made moving platforms rewind correctly in case of traplaunches.
# 1.1.8
This is the first version to support android!
This update adds the following features and bugfixes:
- Adds Rewind feature. Open options to enable rewind and configure its settings!
- Improved traplaunches, they should now be more easily doable.
- Minor physics fixes.
- Fixed broken finish pads
# 1.5.0
This update brings the following big changes:
- Added Rewind capabilities. Open options to configure it.
- Added capability to play locally installed custom levels. Install your customs in platinum/data/missions.
- Improved traplaunches, now they should be much more easier to do.
- Buffed nuke a bit, hold jump key to make it blast much stronger.
- Minor physics improvements.
- Minor performance improvements.
# 1.1.7
This update brings the following changes:
- Added controller support.
- Added support to load and play custom levels. (Native only)
- Improved replay UX flow.
# 1.4.0
This update adds all the playable MBG, MBP, MBU custom levels via Marbleland integration. Play the entire custom level archive without manually installing with, with a single click.
- Added controller support. (Thanks thearst3rd)
- Improved replay saving flow.
- Improved marble physics a bit.
- Fixed Tornado rendering.
- Fixed some collision bugs.
# 1.1.6
This release backports the fixes from MBP:
This is the first build of MBHaxe Gold that has Mac support.
Changelog:
- FOV is now based on horizontal FOV instead of vertical, matching with original MB.
- Cleaned up some UI.
- Fixed collision detection bugs.
- Fixed various graphical bugs.
- Fixed item hitboxes being too small.
# 1.3.3
This update addresses the following issues:
- FOV is now based on horizontal FOV instead of vertical, matching with- original MB.
- Fixed the marble getting stuck in the corners.
- Fixed broken resolution after pressing the back button in Retina display.
- Fixed wrong level order in Intermediate.
- Fixed black screen on opening the game for the first time on MacOS
# 1.1.5
This release backports the fixes from MBP:
This is the first build of MBHaxe Gold that has Mac support.
Changelog:
# 1.3.2
This is the first build of MBHaxe Platinum that has Mac support.
- MBU interior shaders now match more closely to those of MBU in Xbox.
- Added Console for debug purposes. Press Tilde ~ to bring it up.
- Added replay browser for native.
- Reduced lag caused by end pad.
- Fixed inactive button hover sounds.
- Fixed OOB animation timings.
- Added HighDPI/Retina support.
- Fixed the color bugs regarding text input.
- Minor graphical changes to match original.
- Minor performance and physics improvements.
- Fixed tornado rendering.
# 1.1.4
This release backports the fixes from MBP:
# 1.3.1
This release fixes a lot of bugs that were reported and adds in minor improvements:
- Fixed Pad animations not working
- Fixed bugs relating to powerup pickup on respawn.
- Fixed marble not using the hitbox of the rotated hitbox for item pickups.
- Marble finish animation now matches more closely with the original.
- Fixed camera keys not working.
- Added keyboard shortcuts to certain buttons on certain dialog boxes.
- Timer now becomes green on finishing, to match original.
- Fixed double click sound on selecting level category.
- Hypercube now uses MBG gameplay logic.
- Added Time Travel Bonus messages to HUD.
- Fixed lag caused by GJK/Startpad/Endpad.
- Fixed being able to press the end game buttons while typing the name. The input box will be focused.
- Fixed being able to press the end game buttons while typing the name. The- input box will be focused.
- Fixed option sliders not updating values
# 1.1.3
This update brings the following changes:
- Updated Particle Rendering (improved performance)
# 1.3.0
- Added Marble Blast Ultra levels as per Platinum.
- Added Ultra Marbles as per Platinum and their shaders.
- Added shaders for Ultra levels closely matching original MBU. (This may- lag mobile devices)
- Fixed lot of marble physics bugs, they should now be smoother.
- Minor performance improvements
- Minor performance improvements.
- Added restart button to touch controls.
# 1.1.2
This update brings the following changes:
- Added basic state based replays.
- Support for asynchronous resource loading on Web target.
# 1.1.0
Touch Controls and Performance Improvements Update:
- Updated the engine to the latest version
- Added touch controls on the web version when it is loaded on mobile, along with its settings.
- Improved level loading speed on web version and reduced WebGL crashes
- Improved font rendering
- Fixed tornado rendering bug
- Minor performance and stability improvements overall
# 1.0.0
Initial release, windows version.
# 1.2.0
- Implemented most Marble Blast Platinum 1.7.42 (except Ultra)
- Marble reflections
- Optimized resource loading and performance

View file

@ -10,29 +10,40 @@ The browser port supports touch controls, meaning it can be played on mobile dev
### Marble Blast Gold: [Play](https://marbleblastgold.randomityguy.me/)
### Marble Blast Platinum: [Play](https://marbleblast.randomityguy.me/)
### Marble Blast Ultra: [Play](https://marbleblastultra.randomityguy.me/)
## Windows and Mac
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.1.12)
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.7.1)
## Windows, Mac and Linux
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.1.14)
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.7.3)
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.2.5-mbu)
Linux port by [boucymatt](https://github.com/boucymatt). Supports Steam Deck.
## Mac Instructions - Important
Put the .app file in either /Applications or ~/Applications in order to run it properly.
You will also have to bypass Gatekeeper since the .app is not signed.
## Android
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.1.12/MBHaxe-Gold.apk)
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.7.1/MBHaxe-Platinum.apk)
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.1.14/MBHaxe-Gold.apk)
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.7.3/MBHaxe-Platinum.apk)
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.2.5-mbu/MBHaxe-Ultra.apk)
## iOS (NEW!)
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.1.14/MBHaxe-Gold-iOS.ipa)
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.7.3/MBHaxe-Platinum-iOS.ipa)
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.2.5-mbu/MBHaxe-Ultra-iOS.ipa)
Ported to iOS by [boucymatt](https://github.com/boucymatt).
iOS builds ship as `.ipa` files that must be sideloaded, as Apple does not allow direct installs outside the App Store. Use [LiveContainer](https://github.com/LiveContainer/LiveContainer) or an AltStore-compatible store (AltStore, SideStore, etc.). To install and update all builds from one place, add the AltStore source.
<a href="https://stikstore.app/altdirect/?url=https://dl.randomityguy.me/altstore-source.json" target="_blank">
<img src="https://raw.githubusercontent.com/StikStore/altdirect/refs/heads/main/assets/png/AltSource_Blue.png" alt="Add AltSource" width="200"/>
</a>
## Xbox (NEW!)
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.2.5-mbu/MBHaxe-Ultra-UWP-Xbox.msix)
Ported to Xbox via UWP by [Daniel Worley](https://github.com/worleydl).
You will need to enable Developer Mode on your Xbox in order to sideload the app. The walkthrough can be found at https://www.youtube.com/watch?v=2Ly9TIdu9uw.
## Additional Features
- Cross Platform Multiplayer: Available in Ultra and Platinum. You can host and join multiplayer matches in any of these platforms: Windows, Mac, Web, Android.
- Cross Platform Multiplayer: Available in Ultra and Platinum. You can host and join multiplayer matches in any of these platforms: Windows, Mac, Linux, Web, Android, and iOS.
- Replay System: You can record your run using the built in replay system and watch it later.
- Rewind: You can rewind your marble by enabling rewind in the Options and holding down the rewind key (defaults to R).
- Controller Support: Full controller support is added to Marble Blast Ultra, with incomplete support for the rest.
- Touch Controls: Available in the web (mobile) and android versions.
- Touch Controls: Available in the Web (mobile) and Android and iOS versions.
# Screenshots
<img src="https://imgur.com/Ncb4atl.png" width="640">
@ -82,13 +93,16 @@ If the build dependencies are fullfilled, compile with `haxe compile-js.hxml` an
See [here](README-macOS.md)
## Android
The branches used for Android builds are `mbg-android`, `mbp-android-new` or `mbu-android`.
The branches used for Android builds are `mbg-mobile`, `mbp-mobile` or `mbu-mobile`.
Clone [this repository](https://github.com/RandomityGuy/MBHaxeAndroidLibs) containing the necessary libraries for the build and merge its src folder with that of Export/android/app/src folder.
Android NDK version 18.1.5063045 and platform SDK version 31 is needed.
Install zyheaps haxelib as well.
Finally run `gradlew` in Export/android folder and run `gradlew assembleRelease`
This will build the apk file at Export/android/app/build/outputs/apk/release/app-release-unsigned.apk which you can sign yourself and install on your device.
## iOS
The branches used for iOS builds are `mbg-mobile`, `mbp-mobile` or `mbu-mobile`. Follow the CI scripts in the .circleci folder to build the iOS version. You will need a Mac with Xcode installed and an Apple Developer account to build the iOS version. The resulting .ipa file can be sideloaded onto your device using AltStore or similar tools.
# FAQ
## Help I am able to reproduce a crash!
@ -103,12 +117,11 @@ In browser, you can just resize your window. You can use the browser zoom featur
In native version, you can just resize the window if windowed or use the resolution options in the menu or just directly modify settings.json
## How do I change my FOV?
Edit settings.json for native version, edit the MBHaxeSettings key in LocalStorage in browser.
In the Platinum and Ultra versions, there is an FOV slider.
There is an FOV slider in the options menu.
## How do I unlock/lock FPS?
You cannot unlock fps in the browser, it is forever set to vsync.
In the native version, use the options menu to unlock/lock fps, or edit settings.json and set "vsync" to false to unlock fps.
In the native version, use the options menu to unlock/lock fps.
## Hey can you please add this new feature?
If this new feature of yours already exists in MBG but not in this port, then I will try to add it, if I get time to do so, otherwise chances are, I won't add it since I have other things to do and would rather not waste my time on this any further. You are free to do pull requests if you have already implemented said feature.

108
data/font/MarkerFelt.fnt Normal file
View file

@ -0,0 +1,108 @@
<?xml version="1.0"?>
<font>
<info face="MarkerFelt" size="42" bold="0" italic="0" charset="" unicode="1" stretchH="100" smooth="1" aa="1" padding="2,2,2,2" spacing="0,0" outline="0"/>
<common lineHeight="54" base="47" scaleW="512" scaleH="256" pages="1" packed="0" alphaChnl="0" redChnl="0" greenChnl="0" blueChnl="0"/>
<pages>
<page id="0" file="MarkerFelt.png"/>
</pages>
<distanceField fieldType="msdf" distanceRange="4"/>
<chars count="96">
<char id="194" index="130" char="Â" width="28" height="50" xoffset="-1" yoffset="2" xadvance="26" chnl="15" x="0" y="0" page="0"/>
<char id="124" index="95" char="|" width="8" height="46" xoffset="2" yoffset="14" xadvance="11" chnl="15" x="0" y="51" page="0"/>
<char id="87" index="58" char="W" width="43" height="42" xoffset="-2" yoffset="12" xadvance="40" chnl="15" x="0" y="98" page="0"/>
<char id="36" index="7" char="$" width="23" height="43" xoffset="-2" yoffset="11" xadvance="20" chnl="15" x="9" y="51" page="0"/>
<char id="106" index="77" char="j" width="14" height="43" xoffset="-5" yoffset="15" xadvance="9" chnl="15" x="29" y="0" page="0"/>
<char id="81" index="52" char="Q" width="28" height="41" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="33" y="44" page="0"/>
<char id="72" index="43" char="H" width="23" height="41" xoffset="-1" yoffset="12" xadvance="21" chnl="15" x="44" y="0" page="0"/>
<char id="92" index="63" char="\" width="18" height="41" xoffset="-2" yoffset="12" xadvance="13" chnl="15" x="0" y="141" page="0"/>
<char id="102" index="73" char="f" width="20" height="41" xoffset="-2" yoffset="12" xadvance="15" chnl="15" x="0" y="183" page="0"/>
<char id="104" index="75" char="h" width="21" height="41" xoffset="0" yoffset="12" xadvance="20" chnl="15" x="19" y="141" page="0"/>
<char id="69" index="40" char="E" width="20" height="40" xoffset="0" yoffset="12" xadvance="18" chnl="15" x="21" y="183" page="0"/>
<char id="84" index="55" char="T" width="24" height="40" xoffset="-2" yoffset="12" xadvance="20" chnl="15" x="41" y="141" page="0"/>
<char id="89" index="60" char="Y" width="29" height="40" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="44" y="86" page="0"/>
<char id="85" index="56" char="U" width="25" height="40" xoffset="-1" yoffset="13" xadvance="23" chnl="15" x="62" y="42" page="0"/>
<char id="80" index="51" char="P" width="22" height="40" xoffset="0" yoffset="12" xadvance="18" chnl="15" x="68" y="0" page="0"/>
<char id="83" index="54" char="S" width="23" height="40" xoffset="-2" yoffset="12" xadvance="20" chnl="15" x="42" y="182" page="0"/>
<char id="68" index="39" char="D" width="22" height="40" xoffset="0" yoffset="13" xadvance="20" chnl="15" x="66" y="127" page="0"/>
<char id="74" index="45" char="J" width="22" height="40" xoffset="-2" yoffset="13" xadvance="18" chnl="15" x="74" y="83" page="0"/>
<char id="75" index="46" char="K" width="27" height="40" xoffset="-1" yoffset="12" xadvance="23" chnl="15" x="88" y="41" page="0"/>
<char id="76" index="47" char="L" width="21" height="40" xoffset="-1" yoffset="13" xadvance="18" chnl="15" x="91" y="0" page="0"/>
<char id="90" index="61" char="Z" width="29" height="40" xoffset="-2" yoffset="12" xadvance="25" chnl="15" x="113" y="0" page="0"/>
<char id="88" index="59" char="X" width="29" height="40" xoffset="-2" yoffset="12" xadvance="25" chnl="15" x="66" y="168" page="0"/>
<char id="86" index="57" char="V" width="27" height="40" xoffset="-2" yoffset="13" xadvance="23" chnl="15" x="89" y="124" page="0"/>
<char id="78" index="49" char="N" width="27" height="40" xoffset="0" yoffset="12" xadvance="25" chnl="15" x="97" y="82" page="0"/>
<char id="77" index="48" char="M" width="40" height="40" xoffset="0" yoffset="13" xadvance="39" chnl="15" x="116" y="41" page="0"/>
<char id="50" index="21" char="2" width="26" height="40" xoffset="-1" yoffset="12" xadvance="24" chnl="15" x="143" y="0" page="0"/>
<char id="52" index="23" char="4" width="28" height="40" xoffset="-2" yoffset="12" xadvance="24" chnl="15" x="66" y="209" page="0"/>
<char id="53" index="24" char="5" width="26" height="40" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="95" y="209" page="0"/>
<char id="55" index="26" char="7" width="25" height="40" xoffset="0" yoffset="12" xadvance="24" chnl="15" x="96" y="165" page="0"/>
<char id="48" index="19" char="0" width="23" height="40" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="117" y="123" page="0"/>
<char id="91" index="62" char="[" width="14" height="40" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="125" y="82" page="0"/>
<char id="93" index="64" char="]" width="14" height="40" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="140" y="82" page="0"/>
<char id="123" index="94" char="{" width="15" height="40" xoffset="-1" yoffset="12" xadvance="12" chnl="15" x="122" y="164" page="0"/>
<char id="125" index="96" char="}" width="15" height="40" xoffset="-1" yoffset="12" xadvance="12" chnl="15" x="122" y="205" page="0"/>
<char id="108" index="79" char="l" width="11" height="40" xoffset="-1" yoffset="13" xadvance="9" chnl="15" x="138" y="164" page="0"/>
<char id="82" index="53" char="R" width="28" height="39" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="141" y="123" page="0"/>
<char id="73" index="44" char="I" width="12" height="39" xoffset="-1" yoffset="13" xadvance="10" chnl="15" x="155" y="82" page="0"/>
<char id="79" index="50" char="O" width="24" height="39" xoffset="-1" yoffset="13" xadvance="23" chnl="15" x="157" y="41" page="0"/>
<char id="65" index="36" char="A" width="28" height="39" xoffset="-1" yoffset="13" xadvance="26" chnl="15" x="170" y="0" page="0"/>
<char id="70" index="41" char="F" width="19" height="39" xoffset="0" yoffset="13" xadvance="18" chnl="15" x="168" y="81" page="0"/>
<char id="71" index="42" char="G" width="24" height="39" xoffset="-1" yoffset="13" xadvance="20" chnl="15" x="182" y="40" page="0"/>
<char id="67" index="38" char="C" width="22" height="39" xoffset="-1" yoffset="13" xadvance="19" chnl="15" x="199" y="0" page="0"/>
<char id="66" index="37" char="B" width="23" height="39" xoffset="-1" yoffset="14" xadvance="21" chnl="15" x="138" y="205" page="0"/>
<char id="49" index="20" char="1" width="16" height="39" xoffset="4" yoffset="13" xadvance="24" chnl="15" x="150" y="163" page="0"/>
<char id="51" index="22" char="3" width="24" height="39" xoffset="0" yoffset="13" xadvance="24" chnl="15" x="162" y="203" page="0"/>
<char id="54" index="25" char="6" width="23" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="167" y="163" page="0"/>
<char id="56" index="27" char="8" width="21" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="170" y="121" page="0"/>
<char id="57" index="28" char="9" width="23" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="188" y="80" page="0"/>
<char id="33" index="4" char="!" width="10" height="39" xoffset="-1" yoffset="13" xadvance="9" chnl="15" x="207" y="40" page="0"/>
<char id="37" index="8" char="%" width="32" height="39" xoffset="-1" yoffset="13" xadvance="29" chnl="15" x="187" y="203" page="0"/>
<char id="40" index="11" char="(" width="13" height="39" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="191" y="161" page="0"/>
<char id="41" index="12" char=")" width="13" height="39" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="192" y="120" page="0"/>
<char id="47" index="18" char="/" width="25" height="39" xoffset="-2" yoffset="13" xadvance="22" chnl="15" x="205" y="160" page="0"/>
<char id="63" index="34" char="?" width="20" height="39" xoffset="-2" yoffset="13" xadvance="17" chnl="15" x="206" y="120" page="0"/>
<char id="107" index="78" char="k" width="24" height="39" xoffset="-1" yoffset="13" xadvance="20" chnl="15" x="212" y="80" page="0"/>
<char id="38" index="9" char="&amp;" width="28" height="38" xoffset="-1" yoffset="14" xadvance="23" chnl="15" x="227" y="120" page="0"/>
<char id="105" index="76" char="i" width="11" height="38" xoffset="-1" yoffset="15" xadvance="9" chnl="15" x="218" y="40" page="0"/>
<char id="113" index="84" char="q" width="20" height="37" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="222" y="0" page="0"/>
<char id="112" index="83" char="p" width="20" height="37" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="230" y="38" page="0"/>
<char id="100" index="71" char="d" width="20" height="37" xoffset="-1" yoffset="15" xadvance="18" chnl="15" x="243" y="0" page="0"/>
<char id="98" index="69" char="b" width="20" height="37" xoffset="-1" yoffset="15" xadvance="18" chnl="15" x="237" y="76" page="0"/>
<char id="119" index="90" char="w" width="36" height="30" xoffset="-3" yoffset="23" xadvance="30" chnl="15" x="0" y="225" page="0"/>
<char id="116" index="87" char="t" width="21" height="36" xoffset="-3" yoffset="17" xadvance="15" chnl="15" x="251" y="38" page="0"/>
<char id="121" index="92" char="y" width="24" height="36" xoffset="-2" yoffset="23" xadvance="20" chnl="15" x="264" y="0" page="0"/>
<char id="103" index="74" char="g" width="20" height="36" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="220" y="200" page="0"/>
<char id="59" index="30" char=";" width="13" height="32" xoffset="-4" yoffset="24" xadvance="8" chnl="15" x="37" y="224" page="0"/>
<char id="109" index="80" char="m" width="32" height="30" xoffset="-1" yoffset="23" xadvance="30" chnl="15" x="231" y="159" page="0"/>
<char id="114" index="85" char="r" width="20" height="30" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="256" y="114" page="0"/>
<char id="117" index="88" char="u" width="19" height="30" xoffset="-1" yoffset="23" xadvance="17" chnl="15" x="258" y="75" page="0"/>
<char id="122" index="93" char="z" width="23" height="30" xoffset="-2" yoffset="23" xadvance="20" chnl="15" x="273" y="37" page="0"/>
<char id="120" index="91" char="x" width="21" height="30" xoffset="-2" yoffset="23" xadvance="17" chnl="15" x="289" y="0" page="0"/>
<char id="110" index="81" char="n" width="23" height="30" xoffset="-1" yoffset="23" xadvance="21" chnl="15" x="241" y="190" page="0"/>
<char id="101" index="72" char="e" width="19" height="29" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="241" y="221" page="0"/>
<char id="111" index="82" char="o" width="20" height="29" xoffset="-1" yoffset="23" xadvance="17" chnl="15" x="261" y="221" page="0"/>
<char id="97" index="68" char="a" width="25" height="29" xoffset="-2" yoffset="24" xadvance="22" chnl="15" x="264" y="145" page="0"/>
<char id="115" index="86" char="s" width="18" height="29" xoffset="-2" yoffset="23" xadvance="15" chnl="15" x="277" y="106" page="0"/>
<char id="99" index="70" char="c" width="19" height="29" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="278" y="68" page="0"/>
<char id="118" index="89" char="v" width="24" height="29" xoffset="-3" yoffset="23" xadvance="19" chnl="15" x="297" y="31" page="0"/>
<char id="64" index="35" char="@" width="27" height="28" xoffset="0" yoffset="23" xadvance="26" chnl="15" x="311" y="0" page="0"/>
<char id="58" index="29" char=":" width="11" height="28" xoffset="-1" yoffset="24" xadvance="10" chnl="15" x="51" y="223" page="0"/>
<char id="95" index="66" char="_" width="25" height="7" xoffset="-2" yoffset="49" xadvance="21" chnl="15" x="278" y="98" page="0"/>
<char id="35" index="6" char="#" width="22" height="23" xoffset="-1" yoffset="19" xadvance="20" chnl="15" x="298" y="61" page="0"/>
<char id="94" index="65" char="^" width="22" height="20" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="265" y="175" page="0"/>
<char id="60" index="31" char="&lt;" width="20" height="22" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="265" y="196" page="0"/>
<char id="62" index="33" char=">" width="20" height="22" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="282" y="219" page="0"/>
<char id="43" index="14" char="+" width="21" height="21" xoffset="-1" yoffset="21" xadvance="19" chnl="15" x="286" y="196" page="0"/>
<char id="126" index="97" char="~" width="21" height="11" xoffset="0" yoffset="34" xadvance="21" chnl="15" x="44" y="127" page="0"/>
<char id="61" index="32" char="=" width="18" height="17" xoffset="0" yoffset="23" xadvance="17" chnl="15" x="220" y="237" page="0"/>
<char id="42" index="13" char="*" width="18" height="17" xoffset="-1" yoffset="14" xadvance="16" chnl="15" x="288" y="175" page="0"/>
<char id="45" index="16" char="-" width="17" height="11" xoffset="0" yoffset="30" xadvance="17" chnl="15" x="138" y="245" page="0"/>
<char id="34" index="5" char="&quot;" width="15" height="15" xoffset="-1" yoffset="13" xadvance="13" chnl="15" x="303" y="218" page="0"/>
<char id="39" index="10" char="'" width="9" height="14" xoffset="-1" yoffset="13" xadvance="7" chnl="15" x="282" y="242" page="0"/>
<char id="96" index="67" char="`" width="12" height="13" xoffset="1" yoffset="13" xadvance="16" chnl="15" x="162" y="243" page="0"/>
<char id="44" index="15" char="," width="12" height="13" xoffset="-3" yoffset="43" xadvance="8" chnl="15" x="175" y="243" page="0"/>
<char id="46" index="17" char="." width="10" height="11" xoffset="-1" yoffset="40" xadvance="8" chnl="15" x="33" y="86" page="0"/>
<char id="32" index="3" char=" " width="0" height="0" xoffset="-2" yoffset="47" xadvance="11" chnl="15" x="41" y="182" page="0"/>
</chars>
<kernings count="0"/>
</font>

View file

Before

Width:  |  Height:  |  Size: 120 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1 +0,0 @@
QWERTYUIOPASDFGHJKLZXCVBNM1234567890-=!@#$%^&*()_+`~[]\{}|;':",./<>? Âqwertyuiopasdfghjklzxcvbnm

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 13 KiB

BIN
data/interiors/8trim.dif Normal file

Binary file not shown.

BIN
data/interiors/9trim.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL1.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL2.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL3.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL4.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL5.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL6.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL7.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL8.dif Normal file

Binary file not shown.

BIN
data/interiors/ADatL9.dif Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

BIN
data/interiors/AZTEC002.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

BIN
data/interiors/AZTEC029.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

BIN
data/interiors/Black.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 605 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 KiB

BIN
data/interiors/Ceiling1.JPG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
data/interiors/Ceiling1.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 508 B

BIN
data/interiors/Cycle.dif Normal file

Binary file not shown.

BIN
data/interiors/DOOR04.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

BIN
data/interiors/Doors01.dif Normal file

Binary file not shown.

BIN
data/interiors/Doors02.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors03.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors04.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors05.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors06.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors07.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors08.dif Normal file

Binary file not shown.

Binary file not shown.

BIN
data/interiors/Doors09.dif Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
data/interiors/EDGE_RED.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 301 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 KiB

Binary file not shown.

BIN
data/interiors/FLOOR02.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

BIN
data/interiors/FLOOR07.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
data/interiors/FLOOR2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

BIN
data/interiors/FLOOR4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

BIN
data/interiors/Gray33.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 777 B

BIN
data/interiors/Gray50.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 777 B

BIN
data/interiors/Gray66.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 770 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
data/interiors/Grenade.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
data/interiors/Ice.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
data/interiors/Image1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
data/interiors/Image2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
data/interiors/Image3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Some files were not shown because too many files have changed in this diff Show more