Author Topic: Are these possible?  (Read 1843 times)

1.  Making a full mod, not just an Add-On.  One where you have to use -mod Name to use it.  I did a bit of poking around on my own using the Editor mod as a reference, but when it tried to load my main.cs, it complained about it not being in the Add-Ons folder.

2.  Hosting a dedicated server that allows connections from the internet, but does not list itself on the master server.

3.  Specifying which port a dedicated server uses.  I was able to run multiple dedicated servers just fine, and the second one puts the port number it uses in the log which allowed me to specify which one I wanted to connect to.  I did have one weird issue:  If the second was hosted as a LAN only server, it would kick me from it (only the second server) for being an internet client even though my servers and client were running on the same machine.  When I hosted the two instead as internet servers, I was able to connect to both.

4.  If you know the IP and port of the next server you want to go to, is it possible to use a client-based script to cleanly disconnect from the current server and then connect to that other server without ever seeing the main menu?

All content gets packaged as add-ons now. I don't know why you would want to do it the other way.

1. Make an add-on that overwrites things, easy-peasy.
2. yes (stop it from sending data to the master server, then you just give out the IP to connect)
3. Look in the advanced settings tab, you can change the host port (28000 by default) and I presume all ports after that are also used as connection ports (28001 - 28032)
4. yes

All content gets packaged as add-ons now. I don't know why you would want to do it the other way.
1. Make an add-on that overwrites things, easy-peasy.

I asked because there isn't a user friendly way to manage client-side only add-ons.  In other words, Blockland seems to just run every client side add-on it finds without the option to turn individual add-ons on or off.  I only bring it up because of one idea I have involves a powerful feature based on #4, but it'd be potentially abusable since I have in mind a client command that's used to trigger it.  I kind of get the feeling that the answer to #1 is 'no' because of the safeguards Badspot put in place.  In this case, I might just have to go with protecting that client command with a prompt that requests permission from the player to run that command when the server asks.  It'd be annoying, but at least a player wouldn't need to change servers that frequently.  Better than someone abusing this on a non-trusted server and sending players to servers they didn't want to go to.

2. yes (stop it from sending data to the master server, then you just give out the IP to connect)
Yes, that's easier said than done, unless I missed that there's an option for it somewhere.  I'm more wondering if it'd be as simple as overwriting a function with dummy function that does nothing, or if I'm going to have to rewrite most of the connection scripts to do this.  If I have to rewrite a bunch of stuff, it could be difficult considering that most people don't have access to source of the main scripts that blockland uses.

3. Look in the advanced settings tab, you can change the host port (28000 by default) and I presume all ports after that are also used as connection ports (28001 - 28032)
Hmm, I'm going to have to look more into that.  I would have figured the port number I used for the second server would have been close to the default, but it might just be randomly generated.  Although, I was mostly hoping to see if this was possible on the command line.  It'd be pretty annoying to have a separate blockland folder for each server just because I need to set an option for each one to specify the new default ports.  On the other hand, I suppose it might be possible to just add a line in the bat file that changes the setting prior to running blockland.  It'd work as long as that file only needed to be read in once per instance.

4. yes
I guess it would be more of an issue to find the correct function calls and what order to call them.  Otherwise the only real reason I asked was to see if there was anything Badspot might have done to try to prevent this.  A pretty good example of that is with the player jets.  Making them more/less powerful should be a trivial matter, but Badspot did a good job of pretty much locking them to one setting.

2. yes (stop it from sending data to the master server, then you just give out the IP to connect)

I'm pretty confident that you can't stop Blockland posting to the master server, and any method discovered to bypass that would be patched.

A pretty good example of that is with the player jets.  Making them more/less powerful should be a trivial matter, but Badspot did a good job of pretty much locking them to one setting.

I know you're all about "giving the player total control over their server" but it's also nice to have consistency across servers, especially when it comes to the control system - That's why I'm glad the setting is locked down. The jet force is totally appropriate for the game's scale and you'll get used to it eventually.
« Last Edit: April 10, 2010, 08:16:57 PM by Ephialtes »

I'm pretty confident that you can't stop Blockland posting to the master server, and any method discovered to bypass that would be patched.
Sorry, I now realise it was stupid to think that you could simply package over the commands that send the server info to the master server lol

I'm pretty confident that you can't stop Blockland posting to the master server, and any method discovered to bypass that would be patched.

I kind of get the feeling the reason I posted for is misunderstood.  I have in mind to attempt creating a server cluster, and out of consideration to other players, having only the primary server be visible on the list of servers.  Otherwise all the servers in the cluster would be visible, but connecting to any of them would redirect to the primary server.  I'd like to try what I have in mind without filling the master server with spam.

Considering how you replied, is there concern that some sort of method to achieve this would be some method of bypassing the authentication stuff?  That's not at all what I'm trying to do.

I know you're all about "giving the player total control over their server" but it's also nice to have consistency across servers, especially when it comes to the control system - That's why I'm glad the setting is locked down. The jet force is totally appropriate for the game's scale and you'll get used to it eventually.

I used the jets just as an example of how my questions weren't about if a script could be written for it or not, but rather if such a script would be allowed to run.  I know the whole jet thing is more or less just baggage from the last time I was around.