SaberMod Alpha

Some servers allow you to use some "code mods" to expand on the server's functionality, as a client or as a host. Expect things like custom saber colors, new console commands, nice admin tools and more.
Post Reply
User avatar
fau
Staff
Posts: 433
Joined: 16 Aug 2015, 01:01
Location: Warsaw / Poland
Contact:

SaberMod Alpha

Post by fau »



SaberMod is a free server- and client-side mod I conceived a year ago and I've been working on for few months with help from Dziablo and Miso.

You can download a server package, as well as full source code from GitHub. Read more on development process in this topic.

The idea is simple – do everything to level up experience of my favorite JK2 game modes, avoiding unnecessary gimmicks in the process (second part didn't quite work out). In my case that would be competitive 1.04 NF. I wrote more about it here and there is even longer Polish post.

Alpha release contains:
  • A bunch of typical basejk bugfixes and improvements
  • End-game statistics and gametype-specific scoreboards with some extra info
  • Smart follow button and few other spectator improvements
  • New cvars and votes to help manage public games without rcon
  • UI integration of all above
See readme for more details.

On the gimmicky side there are:
  • High resolution fonts
  • Damage plums
  • Unfinished Red Rover gametype
These works nicely, attracting players as I hoped for.

Damage plums need a special attention here. They are just a little part of a bigger plan, that is making nf duel borrow some good ideas from the game genre it really belongs to – arcade fighting game. I'll be collecting ideas and working on it further, especially when it comes to visuals and spectator experience. This will need a solid visual project so let me know if you've got any ideas and are interested in collaboration.

As I wrote, for now I've been concentrating on 1.04 NF but if other communities are interested in features included so far, let me know. I'd be happy to code features for competitive FF, CTF and other game modes (as I already did with scoreboard). I would need someone to guide me through as I'm mainly dueler/tdmer.
Attachments
stats.png
stats.png (630.18 KiB) Viewed 107652 times
callvote.jpg
callvote.jpg (1.11 MiB) Viewed 107661 times
ffaduel.jpg
ffaduel.jpg (681.62 KiB) Viewed 107661 times
ctf-sb.jpg
ctf-sb.jpg (1.04 MiB) Viewed 107661 times
damage-plum.jpg
damage-plum.jpg (823.54 KiB) Viewed 107661 times
Last edited by fau on 01 Mar 2016, 14:42, edited 3 times in total.
User avatar
Daggolin
Administrator
Posts: 794
Joined: 23 Feb 2015, 13:05

Re: SaberMod Alpha

Post by Daggolin »

Looks nice! :)
User avatar
Boothand
Administrator
Posts: 986
Joined: 24 Feb 2015, 08:21
Contact:

Re: SaberMod Alpha

Post by Boothand »

I think that's super cool! Sounds like it could make it a bit more interesting for the spectators.

You mentioned possible other communities, maybe the 1.02 CTF guys would drool over some of these features.
User avatar
ouned
Administrator
Posts: 596
Joined: 23 Feb 2015, 13:03
Location: Gliese581c

Re: SaberMod Alpha

Post by ouned »

looks very nice
especially that everything is reachable via the ui
Xycaleth
Posts: 5
Joined: 21 Feb 2016, 20:17

Re: SaberMod Alpha

Post by Xycaleth »

Rawr :D I like the sounds of this!
User avatar
Daggolin
Administrator
Posts: 794
Joined: 23 Feb 2015, 13:05

Re: SaberMod Alpha

Post by Daggolin »

I haven't read through the source to check if it's in already, but what about adding some lockTeams feature and making that votable?
User avatar
Boothand
Administrator
Posts: 986
Joined: 24 Feb 2015, 08:21
Contact:

Re: SaberMod Alpha

Post by Boothand »

Would be cool with some rewards (icons popping over a player's head) when they do stuff like dealing lots of damage in a short amount of time, aerial kills (within some certain criterias) or anything else that is impressive in 1.04.

Also, hi Xycaleth! Also, yay, Xycaleth!
User avatar
fau
Staff
Posts: 433
Joined: 16 Aug 2015, 01:01
Location: Warsaw / Poland
Contact:

Re: SaberMod Alpha

Post by fau »

Yeah, rewards are in the nearest plans for sure! (although I hate these mon-mothma voice overs for them). Lockteams may find it's use, but I intended "teamsize" cvar + "remove" command (remove to spectator) to take over it. It's more intuitive and you don't need to set it every game.

@Boothand I really care about spectator experience. I have some UI ideas eg. showing hp of both duelers like in fighting games, different camera angles for duels etc. If you've got some more, let me know.

When it comes to 1.02… there could be a fork, although I'm not willing to take the double-testing duty myself. If there are 1.02 moders interested, feel free to take anything you want from the codebase keeping in mind it's GPL2 licensed.
User avatar
Boothand
Administrator
Posts: 986
Joined: 24 Feb 2015, 08:21
Contact:

Re: SaberMod Alpha

Post by Boothand »

At some point I wanted to make a spectator mod only to make spectating very nice, but it's not likely I'll get many more JK peaks personally, so I'm happy for any of the ideas to be implemented by someone.

One of my wishes was to make a rotatable camera around the spectated player, like in most online games where you can spectate. I believe it wouldn't be too hard, given that it can be reproduced in-game by dropping from a still-standing player and moving the mouse around. From code, maybe all that would be needed would be syncing the spectator xyz pos with the player and giving them them them their own viewangles.
This was mostly an idea to make CTF more fun to spectate, might feel less relevant for 1v1, 2v2 games.

In the same category was an idea spectate the player you aimed for, or the closest one. Assuming that the spectator mode above was available, it could probably be done with a trace for players more or less close by, or by some raycast checking a radius around the surface it hit for players to spectate.

Smooth/drunk cam in free spec mode. This was already done in Nerevar's cam mod as I remember it.

Maybe a handy console command to quickly bind who to spec by name comparison. /spec fau = spectate you even if you are named $$$cash::master_--fau--_goatRank::42$$$

Then there were more crazy ideas like in-game split screen for streaming, slow mo replay-esque thing using interpolation between some keyframes for all players involved. You know, things that shouldn't be attempted :P
User avatar
fau
Staff
Posts: 433
Joined: 16 Aug 2015, 01:01
Location: Warsaw / Poland
Contact:

Re: SaberMod Alpha

Post by fau »

Boothand wrote:One of my wishes was to make a rotatable camera around the spectated player, like in most online games where you can spectate. I believe it wouldn't be too hard, given that it can be reproduced in-game by dropping from a still-standing player and moving the mouse around. From code, maybe all that would be needed would be syncing the spectator xyz pos with the player and giving them them them their own viewangles.
This was mostly an idea to make CTF more fun to spectate, might feel less relevant for 1v1, 2v2 games.
Was thinking of putting the camera center in the middle between dueling players for a side view. Free rotating could be interesting too.
In the same category was an idea spectate the player you aimed for, or the closest one. Assuming that the spectator mode above was available, it could probably be done with a trace for players more or less close by, or by some raycast checking a radius around the surface it hit for players to spectate.
This is already done, read readme. "Smart follow" currently switches between dueling players if you're spectating one, cycles between flag carriers or cycles through current team by score order. Let me know if you have any ideas on improving it.
Smooth/drunk cam in free spec mode. This was already done in Nerevar's cam mod as I remember it.
Would need to see it first.
Maybe a handy console command to quickly bind who to spec by name comparison. /spec fau = spectate you even if you are named $$$cash::master_--fau--_goatRank::42$$$
That was one of my first commits. It does substring, colorless and case-insensitive matching. Next step on my todo list is writing jk2mv api to expose autocomplete system for mods and use it (eg. you write /follow fau<tab> and it prints: "Did you mean -#God#-fau aufau Fautec? Would be pretty useful for callvote too).
Then there were more crazy ideas like in-game split screen for streaming, slow mo replay-esque thing using interpolation between some keyframes for all players involved. You know, things that shouldn't be attempted :P
Split screen worked pretty well in cpma. Replay (or so called time-shift from smart tvs) would be nice, but it's rather far on the list.
User avatar
Boothand
Administrator
Posts: 986
Joined: 24 Feb 2015, 08:21
Contact:

Re: SaberMod Alpha

Post by Boothand »

Really nice to hear. Smooth cam is like a camera that could be used to make free cam look a bit more cinematic. Lags a bit behind your movements like in low cg_thirdPersonCameraDamp values, to avoid abrupt changes in velocity and angles.

Combined with free rotation around a spectated player, it could produce some very impressive chase cam footage.
Nerevar's cam mod was a really impressive demo tool that many people used before joMME came around. https://jkhub.org/files/file/1527-nerev ... -jk2-v102/
Xycaleth
Posts: 5
Joined: 21 Feb 2016, 20:17

Re: SaberMod Alpha

Post by Xycaleth »

I remember implementing a free-look camera when spectating players, as well as switching to the killer. It was definitely for JK2, but maybe it was after the last league mod release I made and so it never saw the light of day :(
User avatar
Daggolin
Administrator
Posts: 794
Joined: 23 Feb 2015, 13:05

Re: SaberMod Alpha

Post by Daggolin »

I assume you don't have any of the old source codes anymore?
Xycaleth
Posts: 5
Joined: 21 Feb 2016, 20:17

Re: SaberMod Alpha

Post by Xycaleth »

I was going to look for it this weekend! I might still have lying around somewhere on my old PC.
User avatar
Miso
Posts: 170
Joined: 24 Feb 2015, 02:41
Location: Massachusetts / United States

Re: SaberMod Alpha

Post by Miso »

The infamous League mod source code !? That would be legendary.
Jj.miso
User avatar
Tr!Force
Posts: 433
Joined: 26 Feb 2015, 12:25
Location: Chile
Contact:

Re: SaberMod Alpha

Post by Tr!Force »

Miso wrote:The infamous League mod source code !? That would be legendary.
+1
Image
"The dark side? I've been there. Do your worst." - Kyle Katarn
  • JK2 & JK3 Code-Mod Developer
  • Jedi Knight Plus Mod Project: Click Here
  • E-Mail: triforce@gznetwork.com
  • Discord: TriForce#8785
Xycaleth
Posts: 5
Joined: 21 Feb 2016, 20:17

Re: SaberMod Alpha

Post by Xycaleth »

So uh, I sent fau the league mod source code about 2 or 3 weeks ago by email. I didn't get a reply from him afterwards so I don't know if he's received it or read it :p

Interestingly though, I'd completely forgotten that I had worked on it more in 2010. There's some new code for admin commands that you can run without rcon (and need a login for).
User avatar
Tr!Force
Posts: 433
Joined: 26 Feb 2015, 12:25
Location: Chile
Contact:

Re: SaberMod Alpha

Post by Tr!Force »

Xycaleth wrote:So uh, I sent fau the league mod source code about 2 or 3 weeks ago by email. I didn't get a reply from him afterwards so I don't know if he's received it or read it :p

Interestingly though, I'd completely forgotten that I had worked on it more in 2010. There's some new code for admin commands that you can run without rcon (and need a login for).
i remember ive asked u for the source code years ago (in 2009 i think), when i was a child haha :lol:
Image
"The dark side? I've been there. Do your worst." - Kyle Katarn
  • JK2 & JK3 Code-Mod Developer
  • Jedi Knight Plus Mod Project: Click Here
  • E-Mail: triforce@gznetwork.com
  • Discord: TriForce#8785
User avatar
Daggolin
Administrator
Posts: 794
Joined: 23 Feb 2015, 13:05

Re: SaberMod Alpha

Post by Daggolin »

Any reason you only sent it to fau? Seems like a lot of people are curious about the league mod source.

You might not know it, but in 1.04 a certain part of the community is "stuck" on league. There is not a single mod that wasn't compared to league mod. In most cases it is just "Your mod sucks, league is better. Come league and get owned!". :mrgreen:

That question coming from me... I am the guy with the most broken codebase on jk2, not releasing the mod running on dark, cause it's full of security bugs and the "original codebase" is still containing code that a couple of 13 to 15 year old beginners worked on between school and homework back in the days. But please don't mind me asking. ;)
Xycaleth
Posts: 5
Joined: 21 Feb 2016, 20:17

Re: SaberMod Alpha

Post by Xycaleth »

Daggolin wrote:Any reason you only sent it to fau? Seems like a lot of people are curious about the league mod source.
Cause he requested it directly by email :P I considered just putting it up on GitHub but I wasn't sure how people would feel about having all the "anti-cheat" stuff (which is pretty trivial anyway) being out in the open.
Daggolin wrote: ... cause it's full of security bugs and the "original codebase" is still containing code that a couple of 13 to 15 year old beginners worked on between school and homework back in the days.
Hey, 13-15 year olds can achieve a lot :D I was 15 when I started making league mod.
User avatar
fau
Staff
Posts: 433
Joined: 16 Aug 2015, 01:01
Location: Warsaw / Poland
Contact:

Re: SaberMod Alpha

Post by fau »

Got it, big thanks.

This gives me another kick to start working towards beta release :-)

@Tr!Force: So did I and a bunch of other people I bet!
User avatar
Tr!Force
Posts: 433
Joined: 26 Feb 2015, 12:25
Location: Chile
Contact:

Re: SaberMod Alpha

Post by Tr!Force »

fau wrote:Got it, big thanks.

This gives me another kick to start working towards beta release :-)

@Tr!Force: So did I and a bunch of other people I bet!
RIGHT, i will download! i recently got free time, im interested in this mod.
any suggestions or reports i will post here
Image
"The dark side? I've been there. Do your worst." - Kyle Katarn
  • JK2 & JK3 Code-Mod Developer
  • Jedi Knight Plus Mod Project: Click Here
  • E-Mail: triforce@gznetwork.com
  • Discord: TriForce#8785
User avatar
Daggolin
Administrator
Posts: 794
Joined: 23 Feb 2015, 13:05

Re: SaberMod Alpha

Post by Daggolin »

Xycaleth wrote:I considered just putting it up on GitHub but I wasn't sure how people would feel about having all the "anti-cheat" stuff (which is pretty trivial anyway) being out in the open.
I think it's always the question of what benefits the people (the community) more. The "anti-cheat" or the source code possibly sparking some new mods. And to me the chance of people using the code for good is worth more than an anti-cheat system that even 13 year old kids teach each other to bypass. :mrgreen:

Xycaleth wrote:
Daggolin wrote: ... cause it's full of security bugs and the "original codebase" is still containing code that a couple of 13 to 15 year old beginners worked on between school and homework back in the days.
Hey, 13-15 year olds can achieve a lot :D I was 15 when I started making league mod.
Don't get me wrong, I have seen coders that ages do great work. I've seen "mod developers" the age of 12 who were by far better at their work than the "older generation". And my first programming experience was around that age, too. But I know what my 14 year old self did with the code when I started - no programming experience before that, not having done any tutorials - just trying to modify the jk2 code learning-by-doing. Looking back at those days I don't have the slightest clue how anything I did back then ever worked, but ye. :D

I remember my younger self not knowing about atoi... I think I used cvars to convert types back then. :shock:
And I "solved" memory bugs (not knowing what memory bugs are) back then by adding additional variables with the prefix really:

Code: Select all

				other->client->sess.blocksaber = qfalse;
				other->client->sess.reallyblocksaber = qfalse;
I guess it's enough to say, that the codebase reached a point, where declaring an unused variable would make people "ghosts", force behaved different, etc. years ago. I only fought some of the symptoms back then. Never cleaned it up. Always just had the intention to start a new mod from scratch and leave the old one behind, but the mod is serving its duty for almost a decade now. :roll:
Enough of the emberassing past. :?
Post Reply
Created by Matti from StylesFactory.pl and Warlords of Draenor (modified by jk2.info)
Powered by phpBB® Forum Software © phpBB Limited
 

 

cron