Compare commits

...

2 Commits

Author SHA1 Message Date
DeathByDenim fcf1508e22 Soldat is opensoldat now 2022-07-10 13:01:03 -04:00
DeathByDenim 5a6c5817dc Add Super Tux Party help 2022-07-10 11:55:48 -04:00
5 changed files with 87 additions and 22 deletions

View File

@ -1,37 +1,37 @@
#!/bin/bash
set -e
if [ -e /etc/systemd/system/soldat.service ]; then
systemctl stop soldat
if [ -e /etc/systemd/system/opensoldat.service ]; then
systemctl stop opensoldat
fi
# Install dependencies
sudo apt-get -y install build-essential g++ cmake git fpc libprotobuf-dev protobuf-compiler libssl-dev libsdl2-dev libopenal-dev libphysfs-dev libfreetype6
# Install BZFlag
builddir=${TMPDIR:-/tmp}/soldat-build
builddir=${TMPDIR:-/tmp}/opensoldat-build
mkdir -p ${builddir}
cd ${builddir}
if [ -d soldat ]; then
rm -rf soldat
if [ -d opensoldat ]; then
rm -rf opensoldat
fi
git clone https://github.com/opensoldat/opensoldat.git
git clone https://github.com/opensoldat/base.git
cd opensoldat
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/soldat ..
cmake -DCMAKE_INSTALL_PREFIX=/opt/opensoldat ..
make
make install
mkdir -p /opt/soldat/bin/configs
cp -r ${builddir}/base/server/configs/bots /opt/soldat/bin/configs/bots
mkdir -p /opt/opensoldat/bin/configs
cp -r ${builddir}/base/server/configs/bots /opt/opensoldat/bin/configs/bots
if ! [ -L /usr/games/soldatserver ]; then
ln -s /opt/soldat/bin/soldatserver /usr/games/
if ! [ -L /usr/games/opensoldatserver ]; then
ln -s /opt/opensoldat/bin/opensoldatserver /usr/games/
fi
rm -rf ${builddir}
cat > /opt/soldat/bin/configs/server_dm.cfg <<EOF
cat > /opt/opensoldat/bin/configs/server_dm.cfg <<EOF
sv_hostname "onFOSS LAN"
bots_random_alpha 0
sv_gamemode 0
@ -40,7 +40,7 @@ sv_website ${DOMAINNAME}
bots_chat false
EOF
cat > /opt/soldat/bin/configs/server_ctf.cfg <<EOF
cat > /opt/opensoldat/bin/configs/server_ctf.cfg <<EOF
sv_hostname "onFOSS LAN"
bots_random_alpha 0
sv_gamemode 3
@ -50,11 +50,11 @@ bots_chat false
sv_maplist "mapslist_ctf.txt"
EOF
if ! [ -L /opt/soldat/bin/configs/server.cfg ]; then
ln -s ./server_dm.cfg /opt/soldat/bin/configs/server.cfg
if ! [ -L /opt/opensoldat/bin/configs/server.cfg ]; then
ln -s ./server_dm.cfg /opt/opensoldat/bin/configs/server.cfg
fi
cat > /opt/soldat/bin/configs/mapslist.txt <<EOF
cat > /opt/opensoldat/bin/configs/mapslist.txt <<EOF
Aero
Airpirates
Arena2
@ -86,7 +86,7 @@ Unlim
Veoto
EOF
cat > /opt/soldat/bin/configs/mapslist_ctf.txt <<EOF
cat > /opt/opensoldat/bin/configs/mapslist_ctf.txt <<EOF
ctf_Aftermath
ctf_Amnesia
ctf_Ash
@ -123,7 +123,7 @@ ctf_Wretch
ctf_X
EOF
cat > /opt/soldat/bin/configs/mapslist_htf.txt <<EOF
cat > /opt/opensoldat/bin/configs/mapslist_htf.txt <<EOF
htf_Arch
htf_Baire
htf_Boxed
@ -145,7 +145,7 @@ htf_Vortex
htf_Zajacz
EOF
cat > /opt/soldat/bin/configs/mapslist_inf.txt <<EOF
cat > /opt/opensoldat/bin/configs/mapslist_inf.txt <<EOF
inf_Abel
inf_April
inf_Argy
@ -165,16 +165,16 @@ inf_Warehouse
inf_Warlock
EOF
chown -R ${systemuser}: /opt/soldat/bin/configs
chown -R ${systemuser}: /opt/opensoldat/bin/configs
# Create SystemD unit
cat > /etc/systemd/system/soldat.service <<EOF
cat > /etc/systemd/system/opensoldat.service <<EOF
[Unit]
Description=Soldat server
After=network.target
[Service]
ExecStart=/usr/games/soldatserver -sv_adminpassword "${systempassword}"
ExecStart=/usr/games/opensoldatserver -sv_adminpassword "${systempassword}"
Restart=on-failure
User=${systemuser}
@ -183,7 +183,7 @@ WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now soldat.service
systemctl enable --now opensoldat.service
# Add firewall rules
firewall-cmd --zone=public --add-port=23073/udp --permanent

View File

@ -113,6 +113,7 @@
<li><a href="help_openspades.html">OpenSpades</a></li>
<li><a href="help_soldat.html">Soldat</a></li>
<li><a href="help_supertuxkart.html">SuperTuxKart</a></li>
<li><a href="help_supertuxparty.html">Super Tux Party</a></li>
<li><a href="help_teeworlds.html">Teeworlds</a></li>
<li><a href="help_unvanquished.html">Unvanquished</a></li>
<li><a href="help_xonotic.html">Xonotic</a></li>

View File

@ -0,0 +1,58 @@
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Game server</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/serverstats.css">
<link rel="stylesheet" href="css/help.css">
<link rel="icon" href="icon.svg" sizes="any" type="image/svg+xml">
<script src="https://d3js.org/d3.v7.min.js"></script>
<script src="js/serverstats.js"></script>
</head>
<body>
<nav class="container">
<header class="d-flex flex-wrap justify-content-center py-3 mb-4 border-bottom">
<a href="/" class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-dark text-decoration-none">
<img class="bi me-2" width="40" height="32" src="img/blackmage.svg" alt="Site icon">
<span class="fs-4">onFOSS-LAN hosted by HOSTEDBYNAME</span>
</a>
<ul class="nav nav-pills">
<li class="nav-item"><a href="index.html" class="nav-link" aria-current="page">Home</a></li>
<li class="nav-item"><a href="tournament.html" class="nav-link">Tournament</a></li>
<li class="nav-item"><a href="schedule.html" class="nav-link">Schedule</a></li>
<li class="nav-item"><a href="help.html" class="nav-link active">Help</a></li>
<li class="nav-item"><a href="admin.html" class="nav-link">Admin</a></li>
</ul>
</header>
</nav>
<div class="container">
<div class="row">
<div class="col-md-8">
<h1>Super Tux Party</h1>
<p>Turn-based party game where you challenge other player in real-time mini games.</p>
<img src="img/supertuxparty.png" alt="Screenshot of Super Tux Party">
<h2>Getting the game</h2>
<div class="download"><a href="https://supertux.party/download/latest/">DOWNLOAD</a></div>
<h2>Tips</h2>
<ul>
<li>Use the right mouse button to use your jetpack.</li>
<li>Press Q to switch to your secondary weapon and E to throw grenades.</li>
</ul>
<h2>Connecting</h2>
<p>SClick on "Play online".</p>
<p>Click on the + and type DOMAINNAME and press &lt;Enter&gt;.</p>
<p>Click on DOMAINNAME to connect.</p>
<p>At the bottom of the screen there is a small text field and a Join Lobby button. This is a randomly generated string that needs to be provided by whoever created the lobby. This will be shared over Matrix or Mumble.</p>
</div>
<div class="col-6 col-md-4">
<h5>Live stats</h5>
SERVERSTATE
</div>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

View File

@ -108,6 +108,12 @@
<td>Kart racing game where you can use the various power-ups to give yourself a boost of hinder your opponents.</td>
<td><a href="help_supertuxkart.html">More info</a></td>
</tr>
<tr>
<td><a href="help_supertuxparty.html"><img src="img/supertuxparty.png" height="64" alt="Tiny screenshot of Super Tux Party"></a></td>
<td>Super Tux Party</td>
<td>Turn-based party game where you challenge other player in real-time mini games.</td>
<td><a href="help_supertuxparty.html">More info</a></td>
</tr>
<tr>
<td><a href="help_teeworlds.html"><img src="img/teeworlds.png" height="64" alt="Tiny screenshot of Teeworlds"></a></td>
<td>Teeworlds</td>