3 Commits

Author SHA1 Message Date
hiker
9ef1b65eba Fixed compilation ... again :P 2015-06-25 23:03:55 +10:00
hiker
4d10a680c1 Fixed non-debug compilation. 2015-06-25 22:11:52 +10:00
hiker
b8e4aa589d Added a very rough logging feature for SFXs to debug bug #2169. 2015-06-25 16:54:47 +10:00
690 changed files with 195416 additions and 257040 deletions

1
.gitignore vendored
View File

@@ -9,7 +9,6 @@ stk-editor/
.config/
supertuxkart-64
make*.bat
__pycache__
data/editor
data/karts

View File

@@ -21,27 +21,19 @@ before_install:
- sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32
- sudo apt-get update -qq
- sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev libglew-dev cmake
before_script:
- export THREADS=`nproc`
# Unfortunately using all threads crashes g++: "g++: internal compiler error: Killed (program cc1plus)"
- export THREADS=4
- echo "THREADS = $THREADS"
script:
# First a debug build:
- mkdir build-debug
- cd build-debug
- cmake .. -DCMAKE_BUILD_TYPE=Debug -DCHECK_ASSETS=off
- make VERBOSE=1 -j $THREADS
- make VERBOSE=1 -j 4
# Then a release build:
- cd ..
- mkdir build-release
- cd build-release
- cmake .. -DCMAKE_BUILD_TYPE=Release -DCHECK_ASSETS=off
- make VERBOSE=1 -j $THREADS
- make VERBOSE=1 -j 4
notifications:
irc:

View File

@@ -1,16 +1,3 @@
## SupertTuxKart 0.9.1
* Many bug fixes
* Started to use scripting in tracks
* Significant audio performance improvements
* Smaller tweaks and improvements to several tracks including
** Math class
** XR591
** Fort Magma
** Gran Paradiso
** Subsea
* Tweak to challenges
* Better support for driving tracks in reverse
## SupertTuxKart 0.9 (April 2015)
* Fully shader-based rendering engine
* New tracks Cocoa Temple and Gran Paradiso

View File

@@ -1,6 +1,6 @@
# root CMakeLists for the SuperTuxKart project
project(SuperTuxKart)
set(PROJECT_VERSION "0.9.1")
set(PROJECT_VERSION "0.8.1")
cmake_minimum_required(VERSION 2.8.4)
if(NOT (CMAKE_MAJOR_VERSION VERSION_LESS 3))
@@ -15,12 +15,12 @@ if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "STKRelease")
endif()
option(USE_WIIUSE "Support for wiimote input devices" ON)
option(USE_FRIBIDI "Support for right-to-left languages" ON)
option(CHECK_ASSETS "Check if assets are installed in ../stk-assets" ON)
option(USE_SYSTEM_ANGELSCRIPT "Use system angelscript instead of built-in angelscript. If you enable this option, make sure to use a compatible version." OFF)
option(ENABLE_NETWORK_MULTIPLAYER "Enable network multiplayer. This will replace the online profile GUI in the main menu with the network multiplayer GUI" OFF)
if(MSVC AND (MSVC_VERSION LESS 1900))
if(MSVC)
# Normally hide the option to build wiiuse on VS, since it depends
# on the installation of the Windows DDK (Driver Developer Kit),
# which also needs an absolute path :(
@@ -31,9 +31,7 @@ else()
endif()
if(MINGW OR CYGWIN)
option(USE_WIIUSE "Support for wiimote input devices" OFF)
else()
option(USE_WIIUSE "Support for wiimote input devices" ON)
set(USE_WIIUSE OFF)
endif()
if(UNIX AND NOT APPLE)
@@ -125,15 +123,9 @@ endif()
# Build the angelscript library if not in system
if(USE_SYSTEM_ANGELSCRIPT)
find_package(Angelscript)
if(ANGELSCRIPT_FOUND)
include_directories(${Angelscript_INCLUDE_DIRS})
else()
message(FATAL_ERROR "Angelscript not found. "
"Either install angelscript or use built-in version using "
"-DUSE_SYSTEM_ANGELSCRIPT=0")
endif()
find_package(Angelscript)
if(USE_SYSTEM_ANGELSCRIPT AND ANGELSCRIPT_FOUND)
include_directories(${Angelscript_INCLUDE_DIRS})
else()
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/angelscript/projects/cmake")
include_directories("${PROJECT_SOURCE_DIR}/lib/angelscript/include")
@@ -165,15 +157,6 @@ else()
include_directories(${OGGVORBIS_INCLUDE_DIRS})
endif()
# Freetype
find_package(Freetype)
if(FREETYPE_FOUND)
include_directories(${FREETYPE_INCLUDE_DIRS})
else()
message(FATAL_ERROR "Freetype not found. "
"Freetype is required to display characters in SuperTuxKart. ")
endif()
# Fribidi
if(USE_FRIBIDI)
find_package(Fribidi)
@@ -222,22 +205,12 @@ if(MINGW AND CMAKE_BUILD_TYPE MATCHES Release)
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--subsystem,windows")
endif()
# Netwowk Multiplayer
if(ENABLE_NETWORK_MULTIPLAYER)
add_definitions(-DENABLE_NETWORK_MULTIPLAYER_SCREEN)
endif()
if(WIN32)
# By default windows.h has macros defined for min and max that screw up everything
add_definitions(-DNOMINMAX)
# And shut up about unsafe stuff
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
# Avoid timespec structure redeclaration on Visual Studio 2015
if (NOT (MSVC_VERSION LESS 1900))
add_definitions(-DHAVE_STRUCT_TIMESPEC)
endif()
endif()
if(MSVC)
@@ -349,7 +322,6 @@ target_link_libraries(supertuxkart
${OGGVORBIS_LIBRARIES}
${OPENAL_LIBRARY}
${OPENGL_LIBRARIES}
${FREETYPE_LIBRARIES}
)
if(UNIX AND NOT APPLE)
@@ -409,7 +381,7 @@ if(MSVC OR MINGW)
endif()
if(MINGW)
find_library(LIBGCC NAMES "libgcc_s_dw2-1.dll" "libgcc_s_sjlj-1.dll" "libgcc_s_seh-1.dll" PATHS ${CMAKE_FIND_ROOT_PATH})
find_library(LIBGCC NAMES "libgcc_s_dw2-1.dll" "libgcc_s_sjlj-1.dll" PATHS ${CMAKE_FIND_ROOT_PATH})
if(LIBGCC)
file(COPY ${LIBGCC} DESTINATION ${CMAKE_BINARY_DIR}/bin/)
endif()
@@ -427,6 +399,27 @@ if(MINGW)
endif()
endif()
# Optional tools
add_subdirectory(tools/font_tool)
# ==== Make dist target ====
if(MSVC OR MINGW)
# Don't create a dist target for VS
else()
add_custom_target(dist
COMMAND rm -rf ${CMAKE_BINARY_DIR}/SuperTuxKart-${PROJECT_VERSION} && rm -f ${CMAKE_BINARY_DIR}/SuperTuxKart-${PROJECT_VERSION}.tar.bz2
&& echo "Exporting..."
&& svn export ${PROJECT_SOURCE_DIR} ${CMAKE_BINARY_DIR}/SuperTuxKart-${PROJECT_VERSION}
&& echo "Compressing..."
&& cd ${CMAKE_BINARY_DIR}
&& tar -cjf ${CMAKE_BINARY_DIR}/SuperTuxKart-${PROJECT_VERSION}.tar.bz2 ./SuperTuxKart-${PROJECT_VERSION}
&& echo "Done, cleaning up"
&& rm -rf ${CMAKE_BINARY_DIR}/SuperTuxKart-${PROJECT_VERSION}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
endif()
# ==== Checking if data folder exists ====
if(NOT IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/data)

View File

@@ -1,6 +1,6 @@
# SuperTuxKart Installation Instructions
#SuperTuxKart Installation Instructions
Note: If you obtained this source code from Github, you also need to download the game assets from Sourceforge using SVN.
Note : If you obtained this source code from github, you also need to download the game assets from sourceforge using SVN.
`svn checkout https://svn.code.sf.net/p/supertuxkart/code/stk-assets stk-assets`
@@ -8,7 +8,7 @@ Place the `stk-assets` folder next to the source root `stk-code` folder.
See <http://supertuxkart.sourceforge.net/Source_control> for more information
## Building STK on Linux
##Building STK on Linux
First, make sure that you have the following packages installed:
@@ -50,18 +50,14 @@ make VERBOSE=1 -j2
To create a debug version of STK, use:
```
cmake .. -DCMAKE_BUILD_TYPE=Debug
```
`cmake .. -DCMAKE_BUILD_TYPE=Debug`
To test the compilation, supertuxkart can be run from the build
directory by ./bin/supertuxkart
To install the file, as root execute:
```
make install
```
`make install`
The default install location is `/usr/local`, i.e. the data files will
be written to `/usr/local/share/games/supertuxkart`, the executable
@@ -70,9 +66,9 @@ location, specify `CMAKE_INSTALL_PREFIX` when running cmake, e.g.:
`cmake .. -DCMAKE_INSTALL_PREFIX=/opt/stk`
## Building STK on OS X
##Building STK on OS X
See <http://supertuxkart.sourceforge.net/Building_and_packaging_on_OSX>
## Building STK on Windows
##Building STK on Windows
See <http://supertuxkart.sourceforge.net/How_to_build_the_Windows_version>

View File

@@ -1,4 +1,4 @@
# SuperTuxKart
#SuperTuxKart
[![Build Status](https://travis-ci.org/supertuxkart/stk-code.png?branch=master)](https://travis-ci.org/supertuxkart/stk-code)
SuperTuxKart is a free kart racing game. It is focusing on fun and
@@ -15,7 +15,7 @@ Hope you enjoy the game.
-- The SuperTuxKart development team.
## Hardware Requirements
##Hardware Requirements
* You need a 3D graphics card. (NVIDIA GeForce 8xxx and higher, ATI Radeon HD 4xxx and higher or Intel HD 3000 and higher)
* You should have a CPU that's running at 1GHz or better.
* You'll need at least 512 MB of free VRAM (video memory).
@@ -23,9 +23,9 @@ Hope you enjoy the game.
* Ideally, you want a joystick with at least 6 buttons.
## Compiling SuperTuxKart
##Compiling SuperTuxKart
### Windows
###Windows
1. Install VS 2013 (or later). The free express versions work fine.
2. Download and install a source package - either a released package or from our [git/svn repositories](http://supertuxkart.sourceforge.net/Source_control)
3. Download the latest dependency package depdendencies_for_0.8.2.zip from [here](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/Windows/). Unzip it in the root directory, so that the dependencies directory is next to the src and data directory (if you are updating from a previous dependency package, you can delete the .dll files in the root directory, they are not needed anymore).
@@ -38,24 +38,24 @@ Hope you enjoy the game.
Compilation with cygwin is not officially supported, but
this has been done (check with the forum for details).
### Mac OS X
###Mac OS X
The latest information about compilation on Mac are on our wiki:
<http://supertuxkart.sourceforge.net/Building_and_packaging_on_OSX>
The Xcode project file is in `/src/ide/Xcode/`, but it still
requires that all dependencies are installed as explained on the wiki.
### UNIX
See [`INSTALL.md`](INSTALL.md) for details.
###UNIX
See `INSTALL` for details.
## License
##License
This software is released under the GNU General Public License (GPL) which
can be found in the file [`COPYING`](/COPYING) in the same directory as this file.
can be found in the file `LICENSE` in the same directory as this file.
Information about the licenses for artwork are contained in
`data/licenses`.
## 3D coordinates
##3D coordinates
A reminder for those looking at the code and 3d models:
STK : X right, Y up, Z forwards

View File

@@ -14,11 +14,11 @@ FIND_PATH(Angelscript_INCLUDE_DIRS angelscript.h
)
FIND_LIBRARY(Angelscript_LIBRARY
NAMES angelscript angelscript_s
NAMES angelscript
PATHS
/usr/local
/usr
PATH_SUFFIXES lib lib64 lib32
PATH_SUFFIXES lib
)
# handle the QUIETLY and REQUIRED arguments and set ANGELSCRIPT_FOUND to TRUE if

View File

@@ -1,29 +0,0 @@
# - Find Freetype
# Find the Freetype includes and libraries
#
# Following variables are provided:
# FREETYPE_FOUND
# True if Freetype has been found
# FREETYPE_INCLUDE_DIRS
# The include directories of Freetype
# FREETYPE_LIBRARIES
# Freetype library list
if(WIN32)
find_path(FREETYPE_INCLUDE_DIRS NAMES freetype/freetype.h PATHS "${PROJECT_SOURCE_DIR}/dependencies/include")
find_library(FREETYPE_LIBRARY NAMES freetype PATHS "${PROJECT_SOURCE_DIR}/dependencies/lib")
set(FREETYPE_FOUND 1)
set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY})
elseif(APPLE)
find_path(FREETYPE_INCLUDE_DIRS NAMES freetype/freetype.h PATHS "/Library/Frameworks/FreeType.Framework/Versions/2.4/unix/include")
find_library(FREETYPE_LIBRARY NAMES freetype PATHS "/Library/Frameworks/FreeType.Framework/Versions/2.4/")
include_directories(/Library/Frameworks/FreeType.Framework/Versions/2.4/unix/include)
set(FREETYPE_FOUND 1)
set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY})
elseif(UNIX)
include(FindPkgConfig)
pkg_check_modules(FREETYPE freetype2)
else()
set(FREETYPE_FOUND 0)
endif()

View File

@@ -1,20 +0,0 @@
# Usage:
# cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw-64bit.cmake
# the name of the target operating system
SET(CMAKE_SYSTEM_NAME Windows)
# which compilers to use for C and C++
SET(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc-posix)
SET(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++-posix)
SET(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /usr/lib/gcc/x86_64-w64-mingw32/4.9-posix ${PROJECT_SOURCE_DIR}/dependencies)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
# programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ALWAYS)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

View File

@@ -1,6 +1,3 @@
# Usage:
# cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw.cmake
# the name of the target operating system
SET(CMAKE_SYSTEM_NAME Windows)

BIN
data/CREDITS Executable file → Normal file

Binary file not shown.

View File

@@ -10,11 +10,11 @@
</hard>
<medium>
<karts number="4"/>
<requirements position="1"/>
<requirements position="2"/>
</medium>
<easy>
<karts number="3"/>
<requirements position="1"/>
<requirements position="3"/>
</easy>
</challenge>

View File

@@ -6,15 +6,15 @@
<hard>
<karts number="5"/>
<requirements position="1" time="65"/>
<requirements position="1" time="50"/>
</hard>
<medium>
<karts number="5"/>
<requirements position="1" time="85"/>
<requirements position="1" time="65"/>
</medium>
<easy>
<karts number="5"/>
<requirements position="1" time="105"/>
<requirements position="1" time="80"/>
</easy>
</challenge>

View File

@@ -6,7 +6,7 @@
<hard>
<karts number="5"/>
<requirements position="1" time="205"/>
<requirements position="1" time="200"/>
</hard>
<medium>
<karts number="4"/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
data/fonts/BigDigitFont.xml Executable file

Binary file not shown.

BIN
data/fonts/LayneHansom0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
data/fonts/Mplus2p_JP0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
data/fonts/StkChineseFont.xml Executable file

Binary file not shown.

BIN
data/fonts/StkFont.xml Normal file

Binary file not shown.

Binary file not shown.

BIN
data/fonts/comix.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

22
data/fonts/materials.xml Normal file
View File

@@ -0,0 +1,22 @@
<?xml version="1.0"?>
<materials>
<!-- Fonts -->
<material name="title_font.png" shader="unlit" lazy-load="Y"/>
<material name="title_font_2.png" shader="unlit" lazy-load="Y"/>
<material name="sigmar0.png" shader="unlit" lazy-load="Y"/>
<material name="comix.png" shader="unlit" lazy-load="Y"/>
<material name="LayneHansom0.png" shader="unlit" lazy-load="Y"/>
<material name="Mplus2p_JP0.png" shader="unlit" lazy-load="Y"/>
<material name="rasheeq0.png" shader="unlit" lazy-load="Y"/>
<material name="rasheeq3.png" shader="unlit" lazy-load="Y"/>
<material name="rasheeq4.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei0.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei1.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei2.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei3.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei4.png" shader="unlit" lazy-load="Y"/>
<material name="wqyMicroHei5.png" shader="unlit" lazy-load="Y"/>
<material name="AR_PL_SungtiL_GB0.png" shader="unlit" lazy-load="Y"/>
<material name="LayneHansomBigDigits.png" shader="unlit" lazy-load="Y"/>
</materials>

BIN
data/fonts/rasheeq.xml Normal file

Binary file not shown.

BIN
data/fonts/rasheeq0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
data/fonts/rasheeq1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

BIN
data/fonts/rasheeq3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

BIN
data/fonts/rasheeq4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

BIN
data/fonts/sigmar0.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
data/fonts/title_font.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

BIN
data/fonts/title_font.xml Normal file

Binary file not shown.

BIN
data/fonts/title_font_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

BIN
data/fonts/wqyMicroHei0.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

BIN
data/fonts/wqyMicroHei1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

BIN
data/fonts/wqyMicroHei2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

BIN
data/fonts/wqyMicroHei3.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
data/fonts/wqyMicroHei4.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
data/fonts/wqyMicroHei5.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
data/fonts/wqyMicroHei6.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

@@ -4,27 +4,25 @@
<spreading angle="10" />
<velocity x="0.0"
y="0.003"
y="0.002"
z="0.0" />
<material file="smoke_black.png" />
<!-- Amount of particles emitted per second -->
<rate min="7"
max="12" />
<rate min="25"
max="50" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="2500"
max="5000" />
<!-- Size of the particles -->
<size min="1.6"
max="2.5"
x-increase-factor="2.6"
y-increase-factor="2.6" />
<size min="0.6"
max="1.5" />
<color min="50 50 50"
max="100 100 100" />
<color min="255 255 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="1000" />

View File

@@ -1,35 +0,0 @@
<?xml version="1.0"?>
<!-- For sky particles, the size of the box is ignored -->
<particles emitter="box" randomize-initial-y="true" box_x="100.0" box_y="100" box_z="120.0">
<spreading angle="3" />
<velocity x="-0.00"
y="-0.005"
z="-0.00" />
<material file="confetti.png" clampu="Y" clampv="Y" />
<!-- Amount of particles emitted per second -->
<rate min="500"
max="1000" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="8500"
max="9500" />
<!-- Size of the particles -->
<size min="0.10"
max="0.30" />
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
</particles>

View File

@@ -1,35 +0,0 @@
<?xml version="1.0"?>
<!-- For sky particles, the size of the box is ignored -->
<particles emitter="box" randomize-initial-y="true" box_x="100.0" box_y="100" box_z="120.0">
<spreading angle="3" />
<velocity x="-0.00"
y="-0.005"
z="-0.00" />
<material file="snowflake.png" clampu="Y" clampv="Y" />
<!-- Amount of particles emitted per second -->
<rate min="500"
max="1000" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="8500"
max="9500" />
<!-- Size of the particles -->
<size min="0.10"
max="0.30" />
<color min="40 40 255"
max="255 255 255" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="100" />
<wind speed="0.16"
flips="Y" />
</particles>

View File

@@ -1,32 +0,0 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="20.5">
<spreading angle="120" />
<velocity x="0.002"
y="0.000"
z="0.000" />
<material file="stktex_nebulaCloud_a.png" />
<!-- Amount of particles emitted per second -->
<rate min="1"
max="2" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="20000"
max="30000" />
<!-- Size of the particles -->
<size min="20.5"
max="45.0"
x-increase-factor="1.6"
y-increase-factor="1.6" />
<color min="0 0 0"
max="255 255 255" />
<fadeout time="5000" />
</particles>

View File

@@ -1,32 +0,0 @@
<?xml version="1.0"?>
<particles emitter="box" box_x="0.5" box_y="0.5" box_z="0.5">
<spreading angle="45" />
<velocity x="0.000"
y="0.005"
z="0.000" />
<material file="gfx_bubble_a.png" />
<!-- Amount of particles emitted per second -->
<rate min="8"
max="15" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="2000"
max="3000" />
<!-- Size of the particles -->
<size min="0.5"
max="0.8"
x-increase-factor="1.6"
y-increase-factor="1.6" />
<color min="0 0 0"
max="255 255 255" />
<fadeout time="2000" />
</particles>

View File

@@ -1,33 +0,0 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="0.5">
<spreading angle="180" />
<velocity x="0.003"
y="0.0003"
z="0.003" />
<material file="gfx_sparkFire_a.png" />
<!-- Amount of particles emitted per second -->
<rate min="65"
max="100" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="1700"
max="1700" />
<!-- Size of the particles -->
<size min="0.7"
max="1.1"
x-increase-factor="1.3"
y-increase-factor="1.3"
/>
<color min="255 255 255"
max="255 0 0" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="50" />
</particles>

View File

@@ -1,33 +0,0 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="0.5">
<spreading angle="180" />
<velocity x="0.03"
y="0.003"
z="0.03" />
<material file="gfx_sparkGreen_a.png" />
<!-- Amount of particles emitted per second -->
<rate min="65"
max="100" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="2700"
max="2700" />
<!-- Size of the particles -->
<size min="0.5"
max="0.8"
x-increase-factor="1.1"
y-increase-factor="1.3"
/>
<color min="255 255 255"
max="255 0 0" />
<!-- How much time in milliseconds before the particle is fully faded out -->
<fadeout time="50" />
</particles>

View File

@@ -1,32 +0,0 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="0.5">
<spreading angle="90" />
<velocity x="0.000"
y="0.003"
z="0.000" />
<material file="gfx_earthJetblast_a.png" />
<!-- Amount of particles emitted per second -->
<rate min="900"
max="1000" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="300"
max="1000" />
<!-- Size of the particles -->
<size min="0.3"
max="0.7"
x-increase-factor="1.2"
y-increase-factor="1.2" />
<color min="0 0 0"
max="255 255 255" />
<fadeout time="500" />
</particles>

View File

@@ -1,32 +0,0 @@
<?xml version="1.0"?>
<particles emitter="sphere" radius="0.1">
<spreading angle="12" />
<velocity x="0.000"
y="0.000"
z="0.005" />
<material file="particle_water.png" />
<!-- Amount of particles emitted per second -->
<rate min="30"
max="50" />
<!-- Minimal and maximal lifetime of a particle, in milliseconds. -->
<lifetime min="500"
max="1000" />
<!-- Size of the particles -->
<size min="0.1"
max="0.2"
x-increase-factor="1.3"
y-increase-factor="1.3" />
<color min="255 255 255"
max="255 255 255" />
<fadeout time="3000" />
</particles>

View File

@@ -4,7 +4,6 @@
<card is="Intel(R) HD Graphics 3000" os="windows" disable="AdvancedPipeline"/>
<card is="Intel(R) HD Graphics 3000" os="windows" disable="FramebufferSRGBWorking"/>
<card contains="Intel" os="osx" disable="GI"/>
<card contains="Intel" os="linux" version="<12.0" disable="FramebufferSRGBCapable"/>
<card contains="Intel" disable="TextureCompressionS3TC"/>
<card contains="Intel" os="windows" disable="HighDefinitionTextures"/>
<card contains="NVIDIA" os="windows" version="<344.65" disable="BufferStorage"/>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
<div x="5%" y="2%" width="90%" height="96%" layout="vertical-row" >
<header I18N="Title for challenges screen" text="Challenges - Trophy Room" text_align="center" align="center" width="80%" />
<spacer height="5" width="100%"/>
<box width="100%" proportion="5" layout="vertical-row">
<ribbon_grid id="challenges" proportion="8" width="100%"
label_location="bottom" align="center" child_width="128" child_height="128" />
<spacer proportion="1" width="100%"/>
</box>
</div>
</stkgui>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="2%" y="10%" width="96%" height="80%" layout="vertical-row" >
<label id="title" width="100%" text_align="center" word_wrap="true"
I18N="In the 'add new player' dialog" text="Enter the new player's name" proportion="1" />
<spacer height="25" width="10" />
<textbox id="textfield" width="75%" I18N="In the 'add new player' dialog" align="center"/>
<spacer height="20" width="20" />
<buttonbar proportion="1" id="options" width="100%" height="100%">
<button id="ok" I18N="In the 'add new player' dialog" text="OK" align="center"/>
<button id="cancel" I18N="In the 'add new player' dialog" text="Cancel" align="center"/>
</buttonbar>
<spacer height="15" width="20" />
</div>
</stkgui>

View File

@@ -39,31 +39,31 @@
<spacer width="10" height="10" />
<buttonbar id="menu_bottomrow" x="0" y="0" width="38%" height="100%" align="center">
<icon-button id="test_gpwin" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_gpwin" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: GPWin" label_location="hover"/>
<icon-button id="test_gplose" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_gplose" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: GPLose" label_location="hover"/>
<icon-button id="test_unlocked" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_unlocked" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: Unlocked" label_location="hover"/>
<icon-button id="test_unlocked2" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_unlocked2" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: Unlocked 2" label_location="hover"/>
<icon-button id="test_intro" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_intro" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: Intro" label_location="hover"/>
<icon-button id="test_outro" width="64" height="64" icon="gui/main_options.png"
<icon-button id="test_outro" width="64" height="64" icon="gui/main_options.png" extend_label="50"
raw_text="TEST: Outro" label_location="hover"/>
<icon-button id="options" width="64" height="64" icon="gui/main_options.png"
<icon-button id="options" width="64" height="64" icon="gui/main_options.png" extend_label="50"
I18N="In the main screen" text="Options" label_location="hover"/>
<icon-button id="help" width="64" height="64" icon="gui/main_help.png"
<icon-button id="help" width="64" height="64" icon="gui/main_help.png" extend_label="50"
I18N="In the main screen" text="Help" label_location="hover"/>
<icon-button id="startTutorial" width="64" height="64" icon="gui/tutorial.png"
<icon-button id="startTutorial" width="64" height="64" icon="gui/tutorial.png" extend_label="150"
I18N="In the main screen" text="Tutorial" label_location="hover"/>
<icon-button id="achievements" width="64" height="64" icon="gui/gp_copy.png"
<icon-button id="achievements" width="64" height="64" icon="gui/gp_copy.png" extend_label="150"
I18N="In the main screen" text="Achievements" label_location="hover"/>
<icon-button id="gpEditor" width="64" height="64" icon="gui/gpeditor.png"
<icon-button id="gpEditor" width="64" height="64" icon="gui/gpeditor.png" extend_label="150"
I18N="In the main screen" text="Grand Prix Editor" label_location="hover"/>
<icon-button id="about" width="64" height="64" icon="gui/main_about.png"
<icon-button id="about" width="64" height="64" icon="gui/main_about.png" extend_label="50"
I18N="In the main screen" text="About" label_location="hover"/>
<icon-button id="quit" width="64" height="64" icon="gui/main_quit.png"
<icon-button id="quit" width="64" height="64" icon="gui/main_quit.png" extend_label="50"
I18N="In the main screen" text="Quit" label_location="hover"/>
</buttonbar>
</bottombar>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="0" y="0" width="100%" height="100%" layout="vertical-row" >
<header id="title" text_align="center" width="80%" align="center" I18N="In the server creation screen" text="Server Creation"/>
<header text_align="center" width="80%" align="center" I18N="In the server creation screen" text="Server Creation"/>
<spacer height="15" width="10"/>
<box proportion="4" width="90%" layout="vertical-row" align="center">
<div width="90%" align="center" layout="vertical-row" y="2%" height="96%">

View File

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="0" y="0" width="100%" height="100%" layout="vertical-row" >
<header text_align="center" width="80%" align="center" I18N="In the online multiplayer screen" text="Online Multiplayer"/>
<spacer height="15" width="10"/>
<box proportion="4" width="90%" layout="vertical-row" align="center">
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" id="outer_box" >
<!-- TODO: Here will come some information.. or statistics.. or whatever. Yet to be filled in! It will change depending on state. And I'd also like a close button at the right top. -->
<label I18N="In the online multiplayer screen" proportion="4"
word_wrap="true" text="" align="center"/>
</div>
</box>
<buttonbar id="menu_toprow" proportion="3" width="90%" align="center">
<icon-button id="quick_play" width="128" height="128"
icon="gui/online/menu_quick_play.png" focus_icon="gui/online/menu_quick_play_hover.png"
I18N="In the online multiplayer screen" text="Quick Play"/>
<icon-button id="find_server" width="128" height="128"
icon="gui/online/menu_find_server.png" focus_icon="gui/online/menu_find_server_hover.png"
I18N="In the online multiplayer screen" text="Find Server"/>
<icon-button id="create_server" width="128" height="128"
icon="gui/online/menu_create_server.png" focus_icon="gui/online/menu_create_server_hover.png"
I18N="In the online multiplayer screen" text="Create Server"/>
</buttonbar>
<spacer width="10" height="7%"/>
<bottombar x="2%" width="96%" height="10%" layout="horizontal-row">
<label text_align="left" align="center" height="100%" id="online_status" proportion="1" text=""/>
<spacer width="10" height="10" />
<buttonbar id="menu_bottomrow" x="0" y="0" width="12%" height="100%" align="center">
<icon-button id="profile" width="64" height="64" icon="gui/green_check.png" extend_label="50"
I18N="In the online multiplayer screen" text="Profile" label_location="hover"/>
<icon-button id="sign_out" width="64" height="64" icon="gui/main_quit.png" extend_label="70"
I18N="In the online multiplayer screen" text="Log Out" label_location="hover"/>
</buttonbar>
</bottombar>
</div>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
</stkgui>

View File

@@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="0" y="0" width="100%" height="fit" layout="vertical-row">
<button id="user-id" width="20%" height="fit" align="right"/>
</div>
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
<header text_align="center" width="80%" align="center" I18N="In the online multiplayer screen" text="Online Multiplayer"/>
<spacer height="5%" width="25"/>
<box width="100%" height="38%" padding="10" layout="vertical-row">
<bright width="100%" text="Local Networking" align="center" text_align="left" />
<buttonbar id="lan" proportion="2" width="90%" align="center">
<icon-button id="find_lan_server" width="128" height="128"
icon="gui/online/menu_find_server.png" focus_icon="gui/online/menu_find_server_hover.png"
I18N="In the online multiplayer screen" text="Find Server"/>
<icon-button id="create_lan_server" width="128" height="128"
icon="gui/online/menu_create_server.png" focus_icon="gui/online/menu_create_server_hover.png"
I18N="In the online multiplayer screen" text="Create Server"/>
<icon-button id="manage_user" width="128" height="128"
icon="gui/options_players.png"
I18N="In the online multiplayer screen" text="Users"/>
</buttonbar>
</box>
<spacer height="5%" width="25"/>
<box width="100%" height="38%" padding="10" layout="vertical-row">
<bright width="100%" text="Global Networking" align="center" text_align="left" />
<buttonbar id="menu_top_row" proportion="2" width="90%" align="center">
<icon-button id="find_wan_server" width="128" height="128"
icon="gui/online/menu_find_server.png" focus_icon="gui/online/menu_find_server_hover.png"
I18N="In the online multiplayer screen" text="Find Server"/>
<icon-button id="create_wan_server" width="128" height="128"
icon="gui/online/menu_create_server.png" focus_icon="gui/online/menu_create_server_hover.png"
I18N="In the online multiplayer screen" text="Create Server"/>
<icon-button id="quick_wan_play" width="128" height="128"
icon="gui/online/menu_quick_play.png" focus_icon="gui/online/menu_quick_play_hover.png"
I18N="In the online multiplayer screen" text="Quick Play"/>
</buttonbar>
</box>
<bottombar x="2%" width="96%" height="10%" layout="horizontal-row">
<label text_align="left" align="center" height="100%" id="online_status" proportion="1" text=""/>
<spacer width="10" height="10" />
<buttonbar id="menu_bottomrow" x="0" y="0" width="12%" height="100%" align="center">
<icon-button id="profile" width="64" height="64" icon="gui/green_check.png" extend_label="50"
I18N="In the online multiplayer screen" text="Profile" label_location="hover"/>
<icon-button id="sign_out" width="64" height="64" icon="gui/main_quit.png" extend_label="70"
I18N="In the online multiplayer screen" text="Log Out" label_location="hover"/>
</buttonbar>
</bottombar>
</div>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
</stkgui>

19
data/gui/tutorial.stkgui Normal file
View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
<div x="5%" y="2%" width="90%" height="96%" layout="vertical-row" >
<header I18N="Title for tutorials screen" text="Tutorial - Selection Room" text_align="center" width="100%" />
<spacer proportion="1" width="100%"/>
<list id="tutorials" proportion="5" width="75%" align="center"/>
<spacer proportion="1" width="100%"/>
<spacer width="100%" height="45"/>
</div>
<button id="play" x="-200" y="-40" height="35" align="right" text="Play all"/>
</stkgui>

View File

@@ -1,404 +0,0 @@
<?xml version="1.0"?>
<!-- Format
It is possible to give relative values (factors and more) for each property.
The format as a regex is: ([+-*/](%d+|x))*
An empty value means no change, a value without sign or with a '-' replaces
the previous value. If an operator prefixes the string, e.g. *1.5 (- doesn't
work because it's a sign). x will get replaced by the previous value which
means *1.5 is equal to x*1.5. It's also possible to combine operations:
+1.5*20 means "add 1.5 to the previous value and then multiply by 20".
Note that it's computed sequentially from left to right and there is no
operator precedence. Also whitespaces aren't allowed because they are used
to split arrays.
If you want to return the square of something use x*x or only *x.
ATTENTION: '-' is a special case if it is the first character of a number-
string. It means that the number is negative and NOT that the following
float will be substracted from the base value. So if x = 10 and the string
"-5" is processed, the result will be -5 and not the same as "x-5", which
would result in 10 - 5 = 5.
-->
<characteristics>
<!-- The default values that can be modified by the difficulty, karts, etc.
The values here should also be the values of the maximum difficulty. -->
<characteristic name="base">
<!-- ********** Physics ********** -->
<!-- Suspension
stiffness: kart's suspension stiffness.
rest: Length of suspension when at rest.
travel-cm: maximum movement of suspension - in cm!!
exp-string-response: dampen the suspension spring reaction
exponentially. See
http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=7369\&p=25236&hilit=vehicle#p25236
for details.
max-force: Maximum suspension force -->
<suspension stiffness="140" rest="0.3" travel="0.29"
exp-spring-response="false" max-force="12000" />
<!-- Values related to stability of the chassis: damping, and reduced
impact of roll.
downward-impulse-factor: A speed proportional impulse applied each
frame that pushes the vehicle onto the ground.
track-connection-accel: An artificial force that pulls a wheel to
the ground if its off ground. Reduces the affect if a kart loses
contact with the ground (i.e. it then can't steer or accelerate
anymore).
smooth-flying-impulse: apply a torque impulse to flying kart to keep
them parallel to the ground. -->
<stability roll-influence="0.3"
chassis-linear-damping="0.2"
chassis-angular-damping="0"
downward-impulse-factor="5"
track-connection-accel="2"
smooth-flying-impulse="250" />
<!-- Turning
radius: The turn radius of the kart at
a given speed. The actual steering angle is dependent on the
wheel base of the kart: radius = wheel_base/sin(steering_angle).
The values below define that at speed 0 the turn radius is 2, at
speed 10 the radius is 7.5 etc.
The actual turn radius is piece-wise linearly interpolated. This
allows for tighter turning at lower speeds, and also avoids that
the kart becomes too hard to control at high speed (speeds of
higher than 23 can only be reached with powerups).
time-full-steer: This is the amount of change in steering depending
on current steering. So if the steering is between 0 and 0.5,
the time-for-steering-change is 0.15. If the current steering is
between 0.5 and 1.0, the time-for-steering-change is 0.25.
The speed is used as dt/time-for-steering-change.
In short: steering at less than halfway is somewhat faster,
which should avoid oversteering (by pressing the key for too long),
but slower when you want to steer more. Overwall with the current
settings the expected time-to-full-steer is:
0.5 * 0.25 + 0.5 * 0.15 = 0.2 ... which is overall the same
time we had previously. -->
<turn radius="0:2.0 10:7.5 25:15 45:30"
time-full-steer="0:0.17 0.5:0.17 0.5:0.28 1.0:0.28"
time-reset-steer="0.1" />
<!-- Speed and acceleration
power: The power of the kart
max-speed: The base maximum speed of the kart in m/s
brake-factor: Value used when braking.
brake-time-increase: The brake force is multiplied by
(1 + brake_time) * brake_time_increase - i.e. the longer the
brake was pressed, the harder the kart will brake.
max-speed-reverse-ratio is the percentage of max speed for reverse
gear.
-->
<engine power="875" max-speed="25" brake-factor="15"
brake-time-increase="6" max-speed-reverse-ratio="0.65" />
<!-- Simulated gears
switch-ratio defines at what ratio of the maximum
speed what gear is selected, e.g. 0.25 means that if the speed is
bigger or equal to 0.25 * maxSpeed then use gear 1, 0.5 means if
the speed is bigger or equal to 0.5 x maxSpeed then gear 2.
gear-power-increase contains the increase in max power (to simulate
different gears), e.g. 2.5 as first entry means: 2.5 * maxPower in gear 1
| first | second | third | . -->
<gear switch-ratio="0.25 0.7 1.0" power-increase="2.2 1.7 1.3" />
<!-- Mass of a kart -->
<mass value="350" />
<!-- Wheels
damping-relaxation/compression: for bullet
damping parameters
Radius and width of wheel
front-right, front-left, rear-right and rear-left give the
position of the physics raycast wheels relative to the center of
gravity. Default is to use the corners of the chassis to attach
the wheels to. -->
<wheels damping-relaxation="35" damping-compression="5">
<front-right position="0.38 0 0.6" />
<front-left position="-0.38 0 0.6" />
<rear-right position="0.38 0 -0.6" />
<rear-left position="-0.38 0 -0.6" />
</wheels>
<!-- ********** Visuals ********** -->
<!-- Skidding
increase: multiplicative increase of skidding factor in each frame.
decrease: multiplicative decrease of skidding factor in each frame.
max: maximum skidding factor = maximum increase of steering angle.
time-till-max: Time till maximum skidding is reached.
visual: Additional graphical rotation of kart. The graphical rotation
of the kart also determines the direction the kart is driving to
when skidding is stopped.
visual-time: How long it takes for the visual skid to reach maximum.
revert-visual-time: how long it takes when stopping a skid to revert
the visual skid and bring visuals and physics in sync again.
angular-velocity: Angular velocity to be used for the kart when skidding.
min-speed: Minimum speed a kart must have before it can skid. Must be
>0, otherwise the kart can skid at the start of the race.
time-till-bonus: How long a kart needs to skid in order to get a bonus.
bonus-force: A speedup applied to the kart whick skidded for a while.
bonus-time: How long the bonus-force is applied.
bonus-force: Additional engine force (this is used to offset the fact
that turning after skidding (e.g. to correct direction) often uses
up the skid bonus).
post-skid-rotate-factor: a factor to be used to determine how much
the chassis of a kart should rotate to match the graphical view.
A factor of 1 is identical, a smaller factor will rotate the kart
less (which might feel better).
physical-jump-time: Time for a physical jump at the beginning of a skid.
graphical-jump-time: Time for a graphics-only jump at the beginning
of a skid.
reduce-turn-min/max: The steering done by the controller (which is in
[-1,1]) is mapped to [reduce-turn-min, reduce-turn-max] when skidding
is active (for left turn, right turn will use [-max, -min]). The
effect is that while you skid (say left) you can adjust the direction
of the turn the kart is doing somewhat by steering to the left and right,
but you will always keep on doing a left turn, just more or less. -->
<skid increase="1.05" decrease="0.95" max="2.5" time-till-max="0.5"
visual="1.25" visual-time="0.7" revert-visual-time="0.7"
min-speed="10" time-till-bonus="1.0 3.0"
bonus-speed="4.5 6.5" bonus-time="3.0 4.0"
bonus-force="250 350"
physical-jump-time="0" graphical-jump-time="0.4"
post-skid-rotate-factor="1"
reduce-turn-min="0.2" reduce-turn-max="0.8" enabled="true" />
<!-- Camera
Distance between kart and camera.
forward-up-angle: Angle between camera and plane of kart (pitch)
when the camera is pointing forward
backward-up-angle: Angle between camera and plane of kart (pitch)
when the camera is pointing backwards. This is usually
larger than the forward-up-angle, since the kart itself
otherwise obstricts too much of the view. -->
<camera distance="1.0" forward-up-angle="15"
backward-up-angle="5" />
<!-- Jump animation
animation-time: only if the estimated time for a jump is larger
than this value will the jump animation being
shown. -->
<jump animation-time="0.5" />
<!-- Leaning related parameters, i.e. slightly leaning the karts when
driving a fast curve.
max: maximum leaning (i.e. when steering as much as possible at highest
speed), in degrees.
speed: Speed with which the leaning changes (in degree/second). -->
<lean max="8.6" speed="5.0" />
<!-- ********** Items ********** -->
<!-- Anvil
weight: The additional weight an anvil adds to a kart.
speed-factor: The additional slowdown caused by the anvil.
duration: The time an anvil is active. -->
<anvil duration="2.0" weight="150" speed-factor="0.2" />
<!-- Parachute
friction: The friction increase when a parachute is attached.
duration: The time an attached parachute is active
duration-other: The time a parachute attached from other kart works
lbound-fraction: The lower bound fraction of speed when lost will
detach parachute. E.g. at nearly 0 speed, only 5% of speed
need to be lost.
ubound-fraction: The upper bound fraction of speed when lost will
detach parachute. E.g. at max-speed 30% of speed must be lost.
max-speed: A factor that decides the impact of rate of speed
(distance between bounds) -->
<parachute friction="2.0" duration="4.0" duration-other="8.0"
lbound-fraction="0.95" ubound-fraction="0.7" max-speed="23" />
<!-- Bubblegum
duration: How long the bubblegum lasts.
speed-fraction: To what fraction of top-speed the speed is reduced.
torque: To rotate the kart somewhat.
fade-in-time: How quick the slowdown takes effect.
shield-duration: How long the bubblegum shield lasts -->
<bubblegum duration="1" speed-fraction="0.3" torque="500" fade-in-time="0.01"
shield-duration="10.0" />
<!-- Zipper
duration: Time a zipper is active.
force: Additional zipper force.
speed-gain: One time additional speed.
max-speed-increase: Additional speed allowed on top of the
kart-specific maximum kart speed.
fade-out-time: determines how long it takes for a zipper
to fade out (after 'time'). -->
<zipper duration="3.5" force="250.0" speed-gain="4.5" max-speed-increase="15"
fade-out-time="1.0" />
<!-- Swatter
duration: How long can the swatter be active.
distance: How close a kart or an item must be before it can be hit.
This is the square of the real distance to accelerate the
compution.
squash-duration: How long a kart will remain squashed.
squash-slowdown: Percentage of max speed that a kart is
restricted to. -->
<swatter duration="10" distance="9" squash-duration="5"
squash-slowdown="0.5" />
<!-- Plunger and rubber band handling
band-max-length: The maximum length of rubber band before it snaps.
band-force: The force a plunger/rubber band applies to the kart(s).
band-duration: The duration a rubber band acts.
in-face-time determines how long it takes before a plunger
in your face is removed. -->
<plunger band-max-length="50" band-force="1500" band-duration="1"
band-speed-increase="7" band-fade-out-time="3"
in-face-time="4.5" />
<!-- ********** Miscellaneous ********** -->
<!-- Startup
If a kart starts within the specified time after 'go',
it receives the corresponding bonus from 'boost'. Those
fields must have the same size, and must be sorted by
increasing times. -->
<startup time="0.3 0.5"
boost="6 3" />
<!-- Rescue
duration: How long it takes the kart to be raised.
height: how height the kart will be raised before it is
dropped back onto the track.
vert rescue offset: used to raise karts a bit higher before
releasing them on the ground after a rescue. Used to avoid
resetting karts into the track. Not sure if this is still
necessary. -->
<rescue vert-offset="0.0" duration="1.2" height="2" />
<!-- Explosion
duration: how long it takes before the kart can drive again (this
determines how height the kart is being thrown).
invulnerability-time: how long a kart will be invulnerable
after being hit by an explosion.
radius: Kart closer to this value will be affected by
an explosion as well. -->
<explosion duration="2" radius="5"
invulnerability-time="6" />
<!-- Nitro
engine-force: additional engine power
consumption: nitro consumption - heavier characters can be set
to need more nitro than lighter character.
small-container: how much energy a small container gives.
big-container: how much energy a big container gives.
max-speed-increase: How much the speed of a kart might exceed
its maximum speed (in m/s).
duration: How long the increased speed will be valid after
the kart stops using nitro (and the fade-out-time starts).
fade-out-time: Duration during which the increased maximum
speed due to nitro fades out.
max: How much nitro a kart can store. -->
<nitro engine-force="600" consumption="1" small-container="1" big-container="3"
max-speed-increase="5" duration="1" fade-out-time="2" max="20" />
<!-- Slipstream
length: How far behind a kart slipstream works
width: how wide slipstream works furthest away from the kart.
collect-time: How many seconds of sstream give maximum benefit
use-time: How long the benefit will last.
add-power: Additional power due to sstreaming. 1 = +100%
min-speed: Minimum speed necessary for slipstream to take effect.
max-speed-increase: How much the speed of the kart might exceed
its normal maximum speed.
duration: How long the higher speed lasts after slipstream stopped
working.
fade-out-time: How long the slip stream speed increase will
gradually be reduced. -->
<slipstream length="10" width="2" collect-time="2" use-time="5"
add-power="3" min-speed="10" max-speed-increase="5"
duration="1" fade-out-time="2" />
</characteristic>
<!-- The different difficulties (like easy, medium, hard) -->
<difficulties>
<characteristic name="easy">
<engine power="*0.66" max-speed="*0.6" />
<plunger in-face-time="3" />
</characteristic>
<characteristic name="medium">
<engine power="*0.77" max-speed="*0.8" />
<plunger in-face-time="4" />
</characteristic>
<characteristic name="hard">
<engine power="*0.89" max-speed="*0.92" />
</characteristic>
<!-- This doesn't need to be changed because the most fast/heavy/extreme
values should also be the default ones. -->
<characteristic name="best" />
</difficulties>
<!-- The different kart types, that can be specified in the kart.xml file -->
<kart-types>
<characteristic name="light">
<engine power="*0.46" max-speed="*0.92" brake-factor="*1"
max-speed-reverse-ratio="*0.77" />
<gear switch-ratio="0.20 0.55 1" power-increase="5 4 3" />
<mass value="*0.56" />
<startup time="0.3 0.5"
boost="8.5 4.5" />
<explosion time="2.1" radius="5.5"
invulnerability-time="7" />
<nitro engine-force="350" max-speed-increase="4.5" duration="1.5"
fade-out-time="2.5" />
<slipstream length="11" collect-time="1.5" use-time="2.5" add-power="3.2"
min-speed="9" max-speed-increase="4" duration="1.2"
fade-out-time="2.3" />
</characteristic>
<characteristic name="medium">
<engine power="*0.63" max-speed="*1" brake-factor="*0.73"
max-speed-reverse-ratio="*0.62" />
<gear switch-ratio="0.30 0.7 1.0" power-increase="2.2 2.2 2.5" />
<mass value="*0.71" />
<startup time="0.3 0.5"
boost="4.2 2.6" />
<explosion time="1.8" radius="5"
invulnerability-time="6" />
<nitro engine-force="425" consumption="1.4" duration="1" />
<slipstream use-time="3.3" add-power="2.8" duration="0.9"
fade-out-time="1.6" />
</characteristic>
<characteristic name="heavy">
<engine power="*1" max-speed="*1" brake-factor="*0.66"
max-speed-reverse-ratio="*1" />
<gear switch-ratio="0.45 0.70 1" power-increase="1.5 1.7 2.5" />
<mass value="*1" />
<swatter duration="10" distance="3" squash-duration="5"
squash-slowdown="0.5" />
<startup time="0.3 0.5"
boost="3.8 2" />
<explosion time="1.5" radius="4"
invulnerability-time="6" />
<nitro engine-force="600" consumption="2" max-speed-increase="8"
duration="0.7" fade-out-time="1.3" />
<slipstream length="8.5" use-time="4" add-power="2.7" min-speed="10.5"
max-speed-increase="8" duration="0.7" fade-out-time="1" />
</characteristic>
</kart-types>
<!-- Per-player settings/handicaps (or boosts) -->
<player-characteristics>
<characteristic name="normal" />
<characteristic name="handicap">
<engine brake-factor="*0.8" brake-time-increase="*0.85" max-speed-reverse-ratio="*0.8" />
<bubblegum duration="*1.5" speed-fraction="*1.5" torque="*1.5" />
<zipper duration="*0.8" force="*0.8" speed-gain="*0.8" max-speed-increase="*0.8" />
<swatter duration="*0.8" squash-duration="*1.5" squash-slowdown="*1.8" />
<plunger band-max-length="*0.8" band-speed-increase="*0.8" in-face-time="*1.3" />
<startup time="*0.8 0.8" boost="*0.8 0.8" />
<rescue duration="*1.5" />
<explosion duration="*1.3" invulnerability-time="*0.7" />
<nitro engine-force="*0.8" consumption="*1.1" max-speed-increase="*0.9" max="*0.8" />
<slipstream length="*0.8" width="*0.8" collect-time="*1.5" use-time="*0.8"
add-power="*0.8" min-speed="*0.8" max-speed-increase="*0.9" duration="*0.8" />
</characteristic>
</player-characteristics>
</characteristics>

View File

@@ -1 +0,0 @@
*.sh -crlf

3
data/po/.gitignore vendored
View File

@@ -1,3 +1,2 @@
transifex
tx.exe
gui_strings.h
tx.exe

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -3366,4 +3366,4 @@ msgstr ""
#: src/states_screens/credits.cpp:209
msgid "translator-credits"
msgstr ""
msgstr "Launchpad Contributions:"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1531
data/po/gui_strings.h Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

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