![]() |
*frowns at Jerry's sexual invitation*
|
ehh :H :p
any progress lately? |
features
i think something like private messaging to certain players would be cool and not so difficult from the server end. the server just chooses the socket ID to send the packet out to and that's it. Make it something like if you want to PM player 7 and you're player 1, press "t" and type "/7 (message)" without quotes or parenthesis
i also think (a more difficult feat) would be the ability to host under a different port for router users who aren't allowed to open up 10053 for jj2. The reason this would be difficult is because it would be nice if the receiving end didn't require a "PortPatch" to join. Uh this i kno is possible but i'm too tired to think of how since it's 3:30am sunday morning. Another not so easy feature would be the ability for 33+ players to join. Don't ask i don't know how that would be done. Another semi-difficult would be the ability to only allow a user inputted number of downloaders at a time to prevent flooding/crashing. As a console app i would like it to not operate on strictly command lines because that's too confusing. Make it start up "Welcome to Jazz Jackrabbit 2 Dedicated Server" "Please input your gametype (ctf, battle, treasure, coop, or race) "please input the maximum player number" "Load custom game mode? (1=true, 0=false)" [if true] "Please type in the custom game mode you would like to load (i don't know)" "Log chat (1=true, 0=false)" "Allow Private Messaging " "number of hearts" "number of kills to win" "server name" "at this time please type in the file names of any plugins you'd like to load at this time or press enter to start" "plugin serversync.dll loaded" "server running" |
Quote:
Quote:
Quote:
Quote:
Quote:
And aside from all that, custom game modes (or even the official ones) will be converted to "profiles" which contain, at the minimum, the base game mode, and some sort of script. |
Quote:
Quote:
Quote:
|
If the console app is designed well you can always create a GUI app to control the console.
|
console > GUI
anyway lets recode the dedicated server in msl for minimum portability and slowness |
Quote:
|
The idea of an INI file is good, you can easily save setting profiles by renaming the INI file ;p. I don't like command line stuff, you could at least make it possible to add a GUI plugin (and you *could* include it with the console).
|
Personally I'd focus on the engine/system itself as the root of everything else. The console and/or GUI can be later made as an extension. Most people would prefer a nice GUI, but console is also a must for "low-level" admins. Think of it this way... new users would love to have an easy-to-use interface (like Controller v4.1), but to fine-tune the server with advanced features you'd have to consult the console. And if you ask me, I'd make something like Q3A/UEd console, not the DOS one.
|
(PA) anybody with (FTG) would make it a Windows Console and not a DOS Console.
[Personal attack and flame tag edit. - FQuist] |
Next is he'll remove your account XD
lol just spamming ;p To give this post some value, IMO the first released version should already give the possibility to manage the whole server in a GUI, no matter how this is done ;p not everyone knows how to work with command lines, y'know ;p |
what's so hard? typing something? just rtfm
|
No, remembering and understanding what to type. Especially syntaxes.
|
I think that this dedicated server should have a GUI as said (i do like jerry's idea of an .ini file more tho). But I think that if it would have the settings in an .ini file, than the console should sit on the taskbar (or whatever it's called down where the clock is) and run in the background. The only way to change settings is to run the GUI which would be ran separately and it would command the console. Why would you do such a crazy thing? So you could put the dedicated server in startup and it wouldn't bother you when your computer starts up. It would just sit in the background and run. And you could always unload it by right clicking and clicking quit or exit or something.
|
It's called the system tray. ;p And I don't think it's meant to be running while you are doing whatever you are doing at your PC.
|
If it's got all the features of an anti-crash and it won't lock up your PC I don't see a problem with it running while you do whatever you want. It could be a plugin or something for the dedicated server. Occasionally i'll run 1.23+ and SalLog and use SalLog to minimize both jj2 and sallog to the system tray while i do whatever I feel like. In the meanwhile jj2 will be hosting a test server. Whenever I do that I get no issues except an occasional lock-up which fixes itself after about 2 or 3 minutes. So it sounds like a good idea to me.
|
Though still, your server isn't as dedictated as when it's the only thing running, and not in the background... ;) A tray icon plugin is still a nice idea =)
|
Why a plugin? Features like those can be easily integrated into the program itself ;)
|
The more things are plugins, the less things will be loaded by default. If you need something you can just order the program to load it while starting, other things will remain unloaded. Saves resources and performance. ;)
|
I was about to say it would make it easier if you put the most limited amount of commands required to run a program like this. Maybe /startserver /endserver /banplayer etc would all be required but when you get commands like /minimizetray and you add too many commands, it confuses so easily. So an .ini is a given on this program. Aside from an .ini file, yes a plugin would make it a lot easier. /loadplugin "minimizetray.dll" /loadplugin "autobanajazz.dll" would make it easier because you only have to remember one command and the file name which you can more than easily change to your liking.
EDIT: I'm supposed to be presenting ideas so here's one. Make it so you can set the command for certain things. Like if you want the command to change the level to be /changelevel, you should be able to edit the .ini file and change the level change command to /changelevel. |
I think it's time Neobeo gives some update on how this is all going to work or people will keep making suggestions that won't really fit in how the program is (afaik) going to work.
|
|
Right now it's a console, and I see no reason for neobeo to give it a GUI.
|
so you don't have to type a bunch of confusing commands. Giving it a GUI would make it easier.
|
I do not see a reason why tray icon has to be a plugin. Small pieces of code like this can easily be integrated into the program engine. You can later edit the INI settings to disable parts of the program you do not wish to load. I like the GUI plugin idea for it allows users to make their own GUIs that way. The console window needs to be part of the engine in either case, but users can still choose not to display it on startup (can access it later via system tray icon).
|
A great idea: perform multiple commands while typing only one. In some kind of options file, maybe just the program's ini file, you can specify a command (like /doallthis) that will perform multiple core/plugin commands (like /ban# or /restartlevel etc etc). It should also be possible to use parameters. This way, I'd make a command /switchtobattle "levelname" score which will rename the server to RR Server ..Battle.., change to gametype Battle, loads level levelname.j2l and changes the needed score to win to score.
|
Jerry: Well you have two ways of doing that. Either write a new function inside the script that does all that and then invoke it, or you can use console macros, which you can use by typing "exec macro.txt" where this macro.txt file contains a number of console commands.
|
You mean it's already implemented?
|
Now I really like Overlord's idea. But I still like the idea of an .ini file better.
|
Quote:
I don't want to show off or anything, but I dare say I'd know more than most here about this program, having used an early version of it. Judging by my expierence with this program several things mentioned here are quite unfeasible or very easy to implement yourself. However, I do not know what Neobeo wants people to know about his program, so I was asking him to react on this matter in person. |
once this program is released
i'm planning to make an irc gather bot each player simply types "!add" once it gets the required X amountation of players it automatically starts a server for them to play their 2o2\3o3\4o4 |
I wonder if it's easy to add features to a program if they only know Dutch, English, some German, HTML, PHP and a tiny bit of Javascript. ;p
|
A PHP plugin is possible. This way you could control your server directly from the web. Maybe this is a better way of administrating the server than over the regular chat in jj22 itself, but both could be useful.
|
lawl. I like that. Since a lot of us own websites. But I find that to be a funny and weird way to control a server.
EDIT: I finished my Flash course this year. Could you control the server using an embedded swf/flv file somehow? |
The point is that the server program will need to understand what I'm writing. And I know no more languages than the ones mentioned in the previous post... So it's only easy to add functions for most people if it supports such scripts.
|
Well, seeing as the last post I made here was 6 weeks ago, I dare say I'm overdue for an official project status update. I probably should have for another 4 replies or so, so that this would at the top of a new page. Nevertheless, here are the current list of features.
What already works:
What is buggy/still in progress:
Currently codenamed azure moon, the official name is still not being made known yet. The official scripting language to be used with this project is Lua. Support for DLL plugin has been considered, but will probably not be added until the later stages. The scripting language, for maximum flexibility, has been designed to intercept events, such as onRoast, onChat, onJoin, onCapture. As such, Lua was chosen because it will be easy for beginners to pick up. Ideally, each gamemode would run as its own .lua file. Commands will act as functions, and can be handled globally or locally. Examples of the former are "/kick", "/n", or "/instagib on". These are functions which, when you call, will be handled internally by the server so you don't really need to know how they work. You can also define your own function, such as defining "/spaztagib" to be "player.health = 1; if player.character = jazz then kick player". (That was pseudocode though, and doesn't reflect what Lua actually looks like). The final issue is, as much as I'd like to make this project open source, plenty of obstacles have popped up along the way making the opensourceness of this project a very controversial decision. Said discussion is still being held by the board of directors. As at time of publishing this project is still closed source. Finally, time for the Q&A:
|
Quote:
Quote:
Quote:
Quote:
Quote:
|
Quote:
I hope it's not some silly objection such as Jerrythabest's or something like "it'll make it easier for someone to write an exploit and run arbitrary code on the clients". It's not like there are many skilled programmers in this community that would benefit from making the program free, but it would probably be a good incentive to attract more people -- it's not just the stand-alone server program, anyone would have access to the JJ2 protocol and a reference implementation of it. That certainly creates interesting possibilities. It could also accelerate the development, since everyone would be able to contribute with patches. So I hope the "board of directors" decides to release this under a free license. |
Hmm you actually made me doubt now! GJ :p
|
| All times are GMT -8. The time now is 09:54 AM. |
Powered by vBulletin® Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
JCF © 2001-Infinity Jazz2Online