Skip to content

Commit

Permalink
Merge pull request #980 from Cebion/gunroar
Browse files Browse the repository at this point in the history
New Port: Gunroar
  • Loading branch information
Cebion authored Nov 29, 2024
2 parents b26f808 + 91592b7 commit 07cf977
Show file tree
Hide file tree
Showing 32 changed files with 403 additions and 0 deletions.
45 changes: 45 additions & 0 deletions ports/gunroar/Gunroar.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/bin/bash

XDG_DATA_HOME=${XDG_DATA_HOME:-$HOME/.local/share}

if [ -d "/opt/system/Tools/PortMaster/" ]; then
controlfolder="/opt/system/Tools/PortMaster"
elif [ -d "/opt/tools/PortMaster/" ]; then
controlfolder="/opt/tools/PortMaster"
elif [ -d "$XDG_DATA_HOME/PortMaster/" ]; then
controlfolder="$XDG_DATA_HOME/PortMaster"
else
controlfolder="/roms/ports/PortMaster"
fi

source $controlfolder/control.txt

[ -f "${controlfolder}/mod_${CFW_NAME}.txt" ] && source "${controlfolder}/mod_${CFW_NAME}.txt"

get_controls

GAMEDIR=/$directory/ports/gunroar
CONFDIR="$GAMEDIR/conf"
BINARY=Gunroar

> "$GAMEDIR/log.txt" && exec > >(tee "$GAMEDIR/log.txt") 2>&1

mkdir -p "$GAMEDIR/conf"

cd $GAMEDIR

export LD_LIBRARY_PATH="$GAMEDIR/libs.${DEVICE_ARCH}:$LD_LIBRARY_PATH"
export SDL_GAMECONTROLLERCONFIG="$sdl_controllerconfig"
export TEXTINPUTINTERACTIVE="Y"

# If a port uses GL4ES (libgl.so.1) a folder named gl4es.aarch64 etc. needs to be created with the libgl.so.1 file in it. This makes sure that each cfw and device get the correct GL4ES export.
if [ -f "${controlfolder}/libgl_${CFW_NAME}.txt" ]; then
source "${controlfolder}/libgl_${CFW_NAME}.txt"
else
source "${controlfolder}/libgl_default.txt"
fi

$GPTOKEYB "$BINARY" -c ./$BINARY.gptk &
pm_platform_helper "$GAMEDIR/$BINARY"
./$BINARY
pm_finish
19 changes: 19 additions & 0 deletions ports/gunroar/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Thanks
Thanks to the [Kenta Cho](https://www.asahi-net.or.jp/~cs8k-cyu/windows/gr_e.html) for making this game and making it available for free.

## Controls

| Button | Action |
|--|--|
|DPAD| Move |
|B| Fire lance| Lance is a single-shot weapon. You have to tap a key to fire a next lance.
You can't fire a next lance while a first lance is in a screen.
|A| Fire Guns| Hold a key to open automatic fire and hold the direction of a boat. Tap a key to take a turn while firing.

## Building

```
git clone [email protected]:Cebion/gunroar_pm.git
cd gunroar_pm/sources
./buildLinux.sh
```
15 changes: 15 additions & 0 deletions ports/gunroar/gameinfo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<gameList>
<game>
<path>./Gunroar.sh</path>
<name>Gunroar</name>
<desc>Guns, Guns, Guns!

360-degree gunboat shooter, Gunroar.</desc>
<releasedate>20050629T000000</releasedate>
<developer>Kenta Cho</developer>
<publisher>Self-Published</publisher>
<genre>Shmup</genre>
<image>./gunroar/screenshot.png</image>
</game>
</gameList>
Binary file added ports/gunroar/gunroar/Gunroar
Binary file not shown.
Empty file.
Binary file added ports/gunroar/gunroar/gl4es.aarch64/libGL.so.1
Binary file not shown.
Binary file added ports/gunroar/gunroar/gr.prf
Binary file not shown.
32 changes: 32 additions & 0 deletions ports/gunroar/gunroar/gunroar.gptk
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
back = esc
start = enter

a = z
b = x
x = \"
y = \"

l1 = \"
l2 = \"
r1 = \"
r2 = \"

up = up
down = down
left = left
right = right

left_analog_up = up
left_analog_down = down
left_analog_left = left
left_analog_right = right

right_analog_up = \"
right_analog_down = \"
right_analog_left = \"
right_analog_right = \"

deadzone_mode = scaled_radial
deadzone = 2000
deadzone_scale = 8
deadzone_delay = 16
Binary file added ports/gunroar/gunroar/images/title.bmp
Binary file not shown.
Binary file added ports/gunroar/gunroar/libs.aarch64/libGLU.so.1
Binary file not shown.
20 changes: 20 additions & 0 deletions ports/gunroar/gunroar/licenses/LICENSE_gl4es.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
Copyright (c) 2016-2018 Sebastien Chevalier
Copyright (c) 2013-2016 Ryan Hileman

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
28 changes: 28 additions & 0 deletions ports/gunroar/gunroar/licenses/LICENSE_gunroar.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
* License

License
-------

Copyright 2005 Kenta Cho. All rights reserved.

Redistribution and use in source and binary forms,
with or without modification, are permitted provided that
the following conditions are met:

1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
212 changes: 212 additions & 0 deletions ports/gunroar/gunroar/readme_e.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,212 @@
Gunroar readme.txt
for Windows98/2000/XP(OpenGL required)
ver. 0.15
(C) Kenta Cho

Guns, Guns, Guns!
360-degree gunboat shooter, 'Gunroar'.


* How to start

Unpack gr0_15.zip, and run 'gr.exe'.
Press a gun key to start a game.


* How to play

Steer a boat and sink enemy fleet.

You can select a game mode by pressing up/down keys or
a lance key at the title screen. (NORMAL / TWIN STICK / DOUBLE PLAY / REPLAY)

- Controls (NORMAL mode)

o Move
Arrow / Num / [WASD] / [IJKL] / Stick

o Fire guns / Hold direction
[Z][L-Ctrl][R-Ctrl][.] / Trigger 1, 4, 5, 8, 9, 12

Hold a key to open automatic fire and hold the direction of a boat.
Tap a key to take a turn while firing.

o Fire lance
[X][L-Alt][R-Alt][L-Shift][R-Shift][/][Return] / Trigger 2, 3, 6, 7, 10, 11

Lance is a single-shot weapon. You have to tap a key to fire a next lance.
You can't fire a next lance while a first lance is in a screen.

- Controls (TWIN STICK mode)

It is strongly recommended to use twin analog sticks.

o Move
[WASD] / Stick1 (Axis 1, 2)

o Fire guns
[IJKL] / Stick2 (Axis 3 or 5, 4)

You can control the concentration of guns by the analog stick.
(If you have a problem with the direction of the stick2, try
'-rotatestick2' and '-reversestick2' oprtions.
e.g. '-rotatestick2 -90 -reversestick2')
(If you are using xbox 360 wired controller, use
'-enableaxis5' option.)

- Controls (DOUBLE PLAY mode)

Control two boats at a time.

o Move boat1
[WASD] / Stick1 (Axis 1, 2)

o Move boat2
[IJKL] / Stick2 (Axis 3 or 5, 4)

- Controls (MOUSE mode)

Steer a ship with a keyboard or a pad, and
control a sight with a mouse.

o Move
Arrow / Num / [WASD] / [IJKL] / Stick

o Control sight
Mouse

o Fire guns (narrow)
Mouse left button

o Fire guns (wide)
Mouse right button

- Controls(In every mode)

o Pause
[P]

o Quit a game / Back to title
[ESC]

- Rank multiplier

Rank multiplier (displayed in the upper right) is a bonus multiplier
that increases with a difficulty of a game.
You can increase a rank multiplier faster by going forward faster.

- Boss appearance timer

Boss appearance timer (displayed in the upper left) is a remaining time
before a boss ship appears.


* Options

These command-line options are available:

-brightness n Set the brightness of the screen. (n = 0 - 100, default = 100)
-luminosity n Set the luminous intensity. (n = 0 - 100, default = 0)
-res x y Set the screen resolution to (x, y). (default = 640, 480)
-nosound Stop the sound.
-window Launch the game in the window, not use the full-screen.
-exchange Exchange a gun key and a lance key.
-turnspeed n Adjust the turning speed. (n = 0 - 500, default = 100) (NORMAL mode)
-firerear Fire to the rear of the ship. (NORMAL mode)
-rotatestick2 n
Rotete the direction of the stick2 in n degrees. (TWIN STICK, DOUBLE PLAY mode)
-reversestick2
Reverse the direction of the stick2. (TWIN STICK, DOUBLE PLAY mode)
-enableaxis5
Use the input of axis 5 to fire shots.
(for xbox 360 wired controller) (TWIN STICK, DOUBLE PLAY mode)


* Comments

If you have any comments, please mail to [email protected]


* Webpage

Gunroar webpage:
http://www.asahi-net.or.jp/~cs8k-cyu/windows/gr_e.html


* Acknowledgement

Gunroar is written in the D Programming Language(ver. 0.149).
D Programming Language
http://www.digitalmars.com/d/index.html

Simple DirectMedia Layer is used for media handling.
Simple DirectMedia Layer
http://www.libsdl.org

SDL_mixer and Ogg Vorbis CODEC are used for playing BGMs/SEs.
SDL_mixer 1.2
http://www.libsdl.org/projects/SDL_mixer/
Vorbis.com
http://www.vorbis.com

D Header files at D - porting are for use with OpenGL, SDL and SDL_mixer.
D - porting
http://shinh.skr.jp/d/porting.html

Mersenne Twister is used for creating a random number.
Mersenne Twister: A random number generator (since 1997/10)
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html


* History

2006 3/18 ver. 0.15
Added '-enableaxis5' option. (for xbox 360 wired controller)
2005 9/11 ver. 0.14
Added mouse mode.
Changed a drawing method of a game field.
Fixed a problem with a score reel size in a double play mode.
Increased the number of smoke particles.
2005 7/17 ver. 0.13
Added double play mode.
2005 7/16 ver. 0.12
Added '-rotatestick2' and '-reversestick2' options.
Fixed a BGM problem in the replay mode.
2005 7/ 3 ver. 0.11
Added twin stick mode.
Added '-turnspeed' and '-firerear' options.
Adjusted a position a scrolling starts.
A score reel becomes small when a ship is in the bottom right.
Added a field color changing feature.
2005 6/18 ver. 0.1
First released version.


* License

License
-------

Copyright 2005 Kenta Cho. All rights reserved.

Redistribution and use in source and binary forms,
with or without modification, are permitted provided that
the following conditions are met:

1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Binary file added ports/gunroar/gunroar/replay/last.rpl
Binary file not shown.
1 change: 1 addition & 0 deletions ports/gunroar/gunroar/replay/replay.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Replay files are saved in this directory.
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/chunks/explode.wav
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/chunks/hit.wav
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/chunks/lance.wav
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/chunks/score_up.wav
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/chunks/shot.wav
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/musics/gr0.ogg
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/musics/gr1.ogg
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/musics/gr2.ogg
Binary file not shown.
Binary file added ports/gunroar/gunroar/sounds/musics/gr3.ogg
Binary file not shown.
Loading

0 comments on commit 07cf977

Please sign in to comment.