76

Re: [GAME] Ninslash - v0.5.0

Sure wink I had no problems with the compilation of the sources in master branch, but for some reason the game still crashes:

[james@James Ninslash-master]$ gdb ninslash_d
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
Type "show configuration" for configuration details.
Para las instrucciones de informe de errores, vea:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Leyendo símbolos desde ninslash_d...hecho.
(gdb) run
Starting program: /home/james/Escritorio/Ninslash-master/ninslash_d 
[Depuración de hilo usando libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[57e1d833][engine]: running on unix-linux-ia32
[57e1d833][engine]: arch is little endian
[Nuevo Thread 0xb6d38b40 (LWP 5360)]
[57e1d833][storage]: added path '$USERDIR' ('/home/james/.ninslash')
[57e1d833][storage]: added path '$DATADIR' ('data')
[57e1d833][storage]: added path '$CURRENTDIR' ('/home/james/Escritorio/Ninslash-master')
[57e1d833][binds]: bound f1 (58) = toggle_local_console
[57e1d833][binds]: bound f2 (59) = toggle_remote_console
[57e1d833][binds]: bound tab (43) = +scoreboard
[57e1d833][binds]: bound u (24) = +show_chat
[57e1d833][binds]: bound f10 (67) = screenshot
[57e1d833][binds]: bound s (22) = +down
[57e1d833][binds]: bound a (4) = +left
[57e1d833][binds]: bound d (7) = +right
[57e1d833][binds]: bound space (44) = +jump
[57e1d833][binds]: bound mouse1 (285) = +fire
[57e1d833][binds]: bound mouse2 (286) = +turbo
[57e1d833][binds]: bound e (8) = +picker
[57e1d833][binds]: bound q (20) = +lastweapon
[57e1d833][binds]: bound mouse3 (287) = +switch
[57e1d833][binds]: bound f (9) = +dropweapon
[57e1d833][binds]: bound lshift (225) = +emote
[57e1d833][binds]: bound rshift (229) = +spectate
[57e1d833][binds]: bound right (79) = spectate_next
[57e1d833][binds]: bound left (80) = spectate_previous
[57e1d833][binds]: bound &301 (301) = +gamepadjump
[57e1d833][binds]: bound &302 (302) = +gamepadleft
[57e1d833][binds]: bound &303 (303) = +gamepadright
[57e1d833][binds]: bound &311 (311) = +gamepadfire
[57e1d833][binds]: bound &310 (310) = +gamepadturbo
[57e1d833][binds]: bound &312 (312) = +gamepadpicker
[57e1d833][binds]: bound &308 (308) = +gamepadweapon1
[57e1d833][binds]: bound &309 (309) = +gamepadweapon2
[57e1d833][binds]: bound &299 (299) = +gamepadscoreboard
[57e1d833][binds]: bound 1 (30) = +weapon1
[57e1d833][binds]: bound 2 (31) = +weapon2
[57e1d833][binds]: bound 3 (32) = +weapon3
[57e1d833][binds]: bound 4 (33) = +weapon4
[57e1d833][binds]: bound 5 (34) = +weapon5
[57e1d833][binds]: bound mousewheelup (293) = +prevweapon
[57e1d833][binds]: bound mousewheeldown (294) = +nextweapon
[57e1d833][binds]: bound t (23) = chat all
[57e1d833][binds]: bound y (28) = chat team
[57e1d833][binds]: bound f3 (60) = vote yes
[57e1d833][binds]: bound f4 (61) = vote no
[57e1d833][console]: failed to open 'settings.cfg'
[57e1d833][console]: failed to open 'autoexec.cfg'
[57e1d833][client]: starting...
[Nuevo Thread 0xb4a46b40 (LWP 5361)]
[57e1d833][gfx]: shaders ok!
[Nuevo Thread 0xabcfbb40 (LWP 5363)]
[Nuevo Thread 0xa34f8b40 (LWP 5364)]
[57e1d833][client/sound]: sound init successful
[57e1d833][engine/mastersrv]: refreshing master server addresses
[57e1d833][textrender]: loaded pFont from 'data/fonts/Future n0t Found Regular.ttf'
[57e1d833][textrender]: default pFont set 0xa262f01c
[57e1d833][gameclient]: init all components
[57e1d833][]: pFont memory usage: 2097152

Thread 3 "ninslash_d" received signal SIGSEGV, Segmentation fault.
[Cambiando a Thread 0xb4a46b40 (LWP 5361)]
0x00000000 in ?? ()
(gdb) 

77 (edited by Siile 2016-09-21 13:03:57)

Re: [GAME] Ninslash - v0.5.0

Thanks for reports James_Trj!

I changed a few things. Won't fix the error, but should point the / confirm the location of issue. Can you pull and compile & run again and paste the result?

78

Re: [GAME] Ninslash - v0.5.0

Is it just me, or masterservers are down?

79

Re: [GAME] Ninslash - v0.5.0

pelya wrote:

Is it just me, or masterservers are down?

Seems to work.

80

Re: [GAME] Ninslash - v0.5.0

I am glad about helping you in testing, I hope this information help you to make this game even better! And of course I hope to play it soon smile

Here is the output:

[james@James Ninslash-master]$ gdb ninslash_d
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
Type "show configuration" for configuration details.
Para las instrucciones de informe de errores, vea:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Leyendo símbolos desde ninslash_d...hecho.
(gdb) run
Starting program: /home/james/Escritorio/Ninslash-master/ninslash_d 
[Depuración de hilo usando libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[57e2c4ff][engine]: running on unix-linux-ia32
[57e2c4ff][engine]: arch is little endian
[Nuevo Thread 0xb6d38b40 (LWP 3941)]
[57e2c4ff][storage]: added path '$USERDIR' ('/home/james/.ninslash')
[57e2c4ff][storage]: added path '$DATADIR' ('data')
[57e2c4ff][storage]: added path '$CURRENTDIR' ('/home/james/Escritorio/Ninslash-master')
[57e2c4ff][binds]: bound f1 (58) = toggle_local_console
[57e2c4ff][binds]: bound f2 (59) = toggle_remote_console
[57e2c4ff][binds]: bound tab (43) = +scoreboard
[57e2c4ff][binds]: bound u (24) = +show_chat
[57e2c4ff][binds]: bound f10 (67) = screenshot
[57e2c4ff][binds]: bound s (22) = +down
[57e2c4ff][binds]: bound a (4) = +left
[57e2c4ff][binds]: bound d (7) = +right
[57e2c4ff][binds]: bound space (44) = +jump
[57e2c4ff][binds]: bound mouse1 (285) = +fire
[57e2c4ff][binds]: bound mouse2 (286) = +turbo
[57e2c4ff][binds]: bound e (8) = +picker
[57e2c4ff][binds]: bound q (20) = +lastweapon
[57e2c4ff][binds]: bound mouse3 (287) = +switch
[57e2c4ff][binds]: bound f (9) = +dropweapon
[57e2c4ff][binds]: bound lshift (225) = +emote
[57e2c4ff][binds]: bound rshift (229) = +spectate
[57e2c4ff][binds]: bound right (79) = spectate_next
[57e2c4ff][binds]: bound left (80) = spectate_previous
[57e2c4ff][binds]: bound &301 (301) = +gamepadjump
[57e2c4ff][binds]: bound &302 (302) = +gamepadleft
[57e2c4ff][binds]: bound &303 (303) = +gamepadright
[57e2c4ff][binds]: bound &311 (311) = +gamepadfire
[57e2c4ff][binds]: bound &310 (310) = +gamepadturbo
[57e2c4ff][binds]: bound &312 (312) = +gamepadpicker
[57e2c4ff][binds]: bound &308 (308) = +gamepadweapon1
[57e2c4ff][binds]: bound &309 (309) = +gamepadweapon2
[57e2c4ff][binds]: bound &299 (299) = +gamepadscoreboard
[57e2c4ff][binds]: bound 1 (30) = +weapon1
[57e2c4ff][binds]: bound 2 (31) = +weapon2
[57e2c4ff][binds]: bound 3 (32) = +weapon3
[57e2c4ff][binds]: bound 4 (33) = +weapon4
[57e2c4ff][binds]: bound 5 (34) = +weapon5
[57e2c4ff][binds]: bound mousewheelup (293) = +prevweapon
[57e2c4ff][binds]: bound mousewheeldown (294) = +nextweapon
[57e2c4ff][binds]: bound t (23) = chat all
[57e2c4ff][binds]: bound y (28) = chat team
[57e2c4ff][binds]: bound f3 (60) = vote yes
[57e2c4ff][binds]: bound f4 (61) = vote no
[57e2c4ff][console]: failed to open 'settings.cfg'
[57e2c4ff][console]: failed to open 'autoexec.cfg'
[57e2c4ff][client]: starting...
[Nuevo Thread 0xb4a46b40 (LWP 3942)]
[57e2c500][gfx]: shaders ok!
[Nuevo Thread 0xabcfbb40 (LWP 3943)]
[Nuevo Thread 0xa32fdb40 (LWP 3944)]
[57e2c500][client/sound]: sound init successful
[57e2c500][engine/mastersrv]: refreshing master server addresses
[57e2c500][textrender]: loaded pFont from 'data/fonts/Future n0t Found Regular.ttf'
[57e2c500][textrender]: default pFont set 0xa262f01c
[57e2c500][gameclient]: init all components
[57e2c500][]: pFont memory usage: 2097152
[57e2c501][gameclient]: load textures
[57e2c502][gameclient]: reset components
[57e2c502][gameclient]: initialisation finished after 2152.78ms
[57e2c502][spine]: load file: data/anim/body1.json
[57e2c502][spine]: animation: airjump
[57e2c502][spine]: animation: dance
[57e2c502][spine]: animation: falldamage
[57e2c502][spine]: animation: idle
[57e2c502][spine]: animation: jump
[57e2c502][spine]: animation: jumpback
[57e2c502][spine]: animation: roll
[57e2c502][spine]: animation: roll_down
[57e2c502][spine]: animation: roll_up
[57e2c502][spine]: animation: run
[57e2c502][spine]: animation: runback
[57e2c502][spine]: animation: scaletest
[57e2c502][spine]: animation: slide
[57e2c502][spine]: animation: slide_back
[57e2c502][spine]: animation: slide_down
[57e2c502][spine]: animation: slide_front
[57e2c502][spine]: animation: slide_jump
[57e2c502][spine]: animation: slide_up
[57e2c502][spine]: animation: sliderun
[57e2c502][spine]: animation: sliderun_back
[57e2c502][spine]: animation: test
[57e2c502][spine]: animation: walk
[57e2c502][spine]: animation: wall
[57e2c502][spine]: animation: walljump
[57e2c502][spine]: animation: wallrun
[57e2c502][spine]: load atlas file: data/anim/body1.atlas
[57e2c502][spine]: atlas size: 256,256
[57e2c502][spine]: atlas format: RGBA8888
[57e2c502][spine]: atlas filter: Linear,Linear
[57e2c502][spine]: load file: data/anim/body2.json
[57e2c502][spine]: animation: airjump
[57e2c502][spine]: animation: dance
[57e2c502][spine]: animation: falldamage
[57e2c502][spine]: animation: idle
[57e2c502][spine]: animation: jump
[57e2c502][spine]: animation: jumpback
[57e2c502][spine]: animation: roll
[57e2c502][spine]: animation: roll_down
[57e2c502][spine]: animation: roll_up
[57e2c502][spine]: animation: run
[57e2c502][spine]: animation: runback
[57e2c502][spine]: animation: scaletest
[57e2c502][spine]: animation: slide
[57e2c502][spine]: animation: slide_back
[57e2c502][spine]: animation: slide_down
[57e2c502][spine]: animation: slide_front
[57e2c502][spine]: animation: slide_jump
[57e2c502][spine]: animation: slide_up
[57e2c502][spine]: animation: sliderun
[57e2c502][spine]: animation: sliderun_back
[57e2c502][spine]: animation: test
[57e2c502][spine]: animation: walk
[57e2c502][spine]: animation: wall
[57e2c502][spine]: animation: walljump
[57e2c502][spine]: animation: wallrun
[57e2c502][spine]: load atlas file: data/anim/body2.atlas
[57e2c502][spine]: atlas size: 256,256
[57e2c502][spine]: atlas format: RGBA8888
[57e2c502][spine]: atlas filter: Linear,Linear
[57e2c502][spine]: load file: data/anim/body3.json
[57e2c502][spine]: animation: airjump
[57e2c502][spine]: animation: dance
[57e2c502][spine]: animation: falldamage
[57e2c502][spine]: animation: idle
[57e2c502][spine]: animation: jump
[57e2c502][spine]: animation: jump_ground_fail
[57e2c502][spine]: animation: jump_slide_fail
[57e2c502][spine]: animation: jumpback
[57e2c502][spine]: animation: roll
[57e2c502][spine]: animation: roll_down
[57e2c502][spine]: animation: roll_up
[57e2c502][spine]: animation: run
[57e2c502][spine]: animation: runback
[57e2c502][spine]: animation: scaletest
[57e2c502][spine]: animation: slide
[57e2c502][spine]: animation: slide_back
[57e2c502][spine]: animation: slide_down
[57e2c502][spine]: animation: slide_front
[57e2c502][spine]: animation: slide_jump
[57e2c502][spine]: animation: slide_up
[57e2c502][spine]: animation: sliderun
[57e2c502][spine]: animation: sliderun_back
[57e2c502][spine]: animation: test
[57e2c502][spine]: animation: walk
[57e2c502][spine]: animation: wall
[57e2c502][spine]: animation: walljump
[57e2c502][spine]: animation: wallrun
[57e2c502][spine]: load atlas file: data/anim/body3.atlas
[57e2c502][spine]: atlas size: 256,256
[57e2c502][spine]: atlas format: RGBA8888
[57e2c502][spine]: atlas filter: Linear,Linear
[57e2c502][spine]: load file: data/anim/turret.json
[57e2c502][spine]: animation: build
[57e2c502][spine]: animation: idle
[57e2c502][spine]: load atlas file: data/anim/turret.atlas
[57e2c502][spine]: atlas size: 512,64
[57e2c502][spine]: atlas format: RGBA8888
[57e2c502][spine]: atlas filter: Linear,Linear
[57e2c502][spine]: load file: data/anim/monster1.json
[57e2c502][spine]: animation: move
[57e2c502][spine]: load atlas file: data/anim/monster1.atlas
[57e2c502][spine]: atlas size: 256,256
[57e2c502][spine]: atlas format: RGBA8888
[57e2c502][spine]: atlas filter: Linear,Linear
[57e2c502][client]: version 0.1 8ee4a669fb74f7fd
[57e2c502][engine/mastersrv]: saving addresses
[57e2c502][]: pFont memory usage: 2621440
[57e2c502][]: pFont memory usage: 2752512

Thread 3 "ninslash_d" received signal SIGSEGV, Segmentation fault.
[Cambiando a Thread 0xb4a46b40 (LWP 3942)]
0x00000000 in ?? ()
(gdb) 

81 (edited by pelya 2016-09-22 12:57:11)

Re: [GAME] Ninslash - v0.5.0

I've published Android version to Google Play, here's a beta test opt-in link.
.apk file and source tarball, Git repo, build instructions.

You will need a keyboard to play - Bluetooth or USB keyboard + OTG cable.
Touchscreen controls and gamepad support is coming later.
This app is going to stay in the early access category for a while.

82

Re: [GAME] Ninslash - v0.5.0

@pelya Did you even ask if it'd be okay to just publish it like that?  I mean, seems kinda unfair to me.

83 (edited by pelya 2016-09-22 12:06:17)

Re: [GAME] Ninslash - v0.5.0

What exactly is unfair with publishing open-source noncommercial game?

84

Re: [GAME] Ninslash - v0.5.0

I don't mind. smile

The current license states that:

You are free to:

Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material

I'll most likely change the license to even more liberal one in near future.

85

Re: [GAME] Ninslash - v0.5.0

I didn't know about that and the fact he worked on the source too so ignore my post.

86

Re: [GAME] Ninslash - v0.5.0

I've added a preliminary version of touchscreen controls to Android port.
You can shoot, run around the level, and even jump sometimes, but switching weapons does not work yet. Also there are random graphics glitches when wearing leather mask.

Google Play is mocking me by not pushing the update, you should eventually have it  at this link.
Or you can download .apk file here directly.

87

Re: [GAME] Ninslash - v0.5.0

pelya wrote:

I've published Android version to Google Play, here's a beta test opt-in link.
.apk file and source tarball, Git repo, build instructions.

You will need a keyboard to play - Bluetooth or USB keyboard + OTG cable.
Touchscreen controls and gamepad support is coming later.
This app is going to stay in the early access category for a while.

Thanks for using my mask for the icon. I like seeing people use my stuff.

Jesus is my Lord and Savior. Praise be unto God for giving us a way to live with him.

Check out my DeviantArt for all my TeeWorlds art and ideas for Teeoworlds

88

Re: [GAME] Ninslash - v0.5.0

I've improved touchscreen controls in the Android version, I think they are almost final, but your suggestions are welcome.

You swipe to move, slide, and shoot, and tap to jump, activate jetpack, and switch weapons.

It's still impossible to use mines and build turrets, because weapon picker does not have enough space for them, and the central part of the weapon picker is a jump button on Android, where the mines are in PC version. I will move them and other stuff to a separate button row on top of the screen.
Weapon picker is somewhat awkward on a touchscreen, but you won't use it often, because weapons will switch automatically when out of ammo.
There are no buttons to view score table and chat, no gamepad support, text input is buggy, and the graphics becomes messed up if you put the app to background and restore it.
When I'll fix all that, I'll move the app out of beta.
Next big step would be adding UDP hole punching and UPnP support, so you will be able to host internet games from your home wifi router without forwarding any ports.
I also want to do one big improvement to the network engine, but I'll be lucky if I'll do it before the end of 2017. Oh, and the game speed slider.
The editor is unusable on Android, I'll probably fix it around year 2020 big_smile

@Siile I have a gameplay suggestion - let's remove the pistol, it's a weak slow-firing weapon with not much of an ammo, and since you are respawning with a random powerful weapon, pistol makes no sense, it's just a waste of ammo boxes. We can put mines in it's place, or turret part, or create a new weapon.
I will create pull requests for out-of-ammo weapon switching, and for 'start server' menu. Please check the server menu on Android, and tell me what's missing from it. You currently can select the game type, map, and amount of bots, but it will probably need few other options.

89 (edited by Siile 2016-10-02 13:07:37)

Re: [GAME] Ninslash - v0.5.0

pelya wrote:

@Siile I have a gameplay suggestion - let's remove the pistol, it's a weak slow-firing weapon with not much of an ammo, and since you are respawning with a random powerful weapon, pistol makes no sense, it's just a waste of ammo boxes. We can put mines in it's place, or turret part, or create a new weapon.
I will create pull requests for out-of-ammo weapon switching, and for 'start server' menu. Please check the server menu on Android, and tell me what's missing from it. You currently can select the game type, map, and amount of bots, but it will probably need few other options.

Random weapon at spawn is actually a server setting (sv_randomweapons). But yeah, even without the random weapons pistol is kinda useless as it is. I'll need to rework most of the weapons in any case since they're all so boring.

I'm not that into the auto weapon switch on no ammo. Better on mobile, but I feel that it shouldn't be included in desktop version.

Starting server from client is something I've been thinking as well, but that should be separately written for each os?

Btw, what's wrong with this?
m_TeeInfos.m_ColorBody = rand()*(0xFFFFFF/RAND_MAX);

/Siile

90 (edited by heinrich5991 2016-10-02 14:56:45)

Re: [GAME] Ninslash - v0.5.0

Siile wrote:

m_TeeInfos.m_ColorBody = rand()*(0xFFFFFF/RAND_MAX);

This will overflow your integer in most cases. Maybe try casting it to `uint64_t`.

EDIT: Nevermind, this will always return 0 on machines where RAND_MAX is larger than `0xFFFFFF`, do the multiplication first and use 64 bit integers.

91

Re: [GAME] Ninslash - v0.5.0

What about modulo: rand() % 256

Luck is allowed

92

Re: [GAME] Ninslash - v0.5.0

android272 wrote:

Here is a video of water in teeworlds that looks really good. And I found this gamedev.stackexchange thread on how to make a system like this. here is a direct link to the tutorial the guy uses for the water system.

This was really helpful. I remember seeing Blinky's water long ago, but didn't know the source.

Still work in process, but we'll get there. wink
http://ninslash.com/gifs/acid.gif

ps. The new mask looks good ingame.

93

Re: [GAME] Ninslash - v0.5.0

Siile wrote:
android272 wrote:

Here is a video of water in teeworlds that looks really good. And I found this gamedev.stackexchange thread on how to make a system like this. here is a direct link to the tutorial the guy uses for the water system.

This was really helpful. I remember seeing Blinky's water long ago, but didn't know the source.

Still work in process, but we'll get there. wink
http://ninslash.com/gifs/acid.gif

Oh my this looks so good!!!

Siile wrote:

ps. The new mask looks good ingame.

Thanks

Jesus is my Lord and Savior. Praise be unto God for giving us a way to live with him.

Check out my DeviantArt for all my TeeWorlds art and ideas for Teeoworlds

94

Re: [GAME] Ninslash - v0.5.0

Siile wrote:

I'll need to rework most of the weapons in any case since they're all so boring.

https://youtu.be/mcN2TTH6tQo#t=42m38s

95

Re: [GAME] Ninslash - v0.5.0

Too much childhood involved. big_smile

96 (edited by Siile 2016-10-09 12:08:38)

Re: [GAME] Ninslash - v0.5.0

0.1.9

Download (win & unix, Dropbox)

http://ninslash.com/wp-content/uploads/2016/09/happyblood-300x242.png

-New map: lab2
-Acid pools
-Conveyor belts
-New blood
-Issue with ctf fixed
-Screenshake on explosions
-Example votes added to dm default configs

Server updates required.

Turn ground blood on (settings -> custom) and restart to enable the new blood.

Happy slaughter times!

http://ninslash.com/gifs/surfacetension.gif

97

Re: [GAME] Ninslash - v0.5.0

Fixed one server bug and added new map (ctf2) which is based on old ctf3. Git and downloads are up to date.

98

Re: [GAME] Ninslash - v0.5.0

Perhaps you can get more 'public' if make something like "race" mod with your new map elements... hmm

99

Re: [GAME] Ninslash - v0.5.0

unsigned char* wrote:

Perhaps you can get more 'public' if make something like "race" mod with your new map elements... hmm

That's not how race mods are done.
First, you get to 100 servers and 1000 daily active players with your game, and then a race mod will happen all on it's own.

100

Re: [GAME] Ninslash - v0.5.0

@pelya may I correct you.

1000 servers and 100 daily active players.

Having troubles finding servers in the serverlist? Go to Pastebin (its a referer cause there is daily a new pastebin) and add the lines to your settings.cfg (in %APPDATA%\teeworlds). Then open teeworlds and go to the favorites tab. (Note however, standard teeworlds client can only show 256 favorites, use ddnet instead)