TMSPS : .Net based server control system

This is the place where you can find everything related to the dedicated server, control scripts and community tools.

Moderators: Pit Crew, TM-Patrol

Subjaz
pedestrian
pedestrian
Posts: 8
Joined: 02 Jun 2009 15:32
Owned TM-games: TMF

Re: TMSPS : .Net based server control system

Post by Subjaz » 07 Jun 2009 09:05

TheM wrote:Just want to try some things... but which file do I have to open when I click "Open project..." ?
You have to open: tags\nwo\TMSPS
thats a visual studio solution file

User avatar
w1lla
TM-Patrol
TM-Patrol
Posts: 1466
Joined: 23 May 2007 07:20
Owned TM-games: TMU, TMN, TMF
Manialink(s): intr
Location: Venray

Re: TMSPS : .Net based server control system

Post by w1lla » 07 Jun 2009 09:21

nice Program....

Building the project went well and got all systems running.

Specially like the Test client. (This one can be made to be a new servermania as it has so much potential.)

Code: Select all

[Header]
2009-06-07 11:22:09,937 [1] DEBUG TMSPS.Daemon.Program [(null)] - Running in console mode.
2009-06-07 11:22:09,984 [1] ERROR TMSPS.Core.PluginSystem.ConfigSettingsConfigurationSection [(null)] - Could not find ConfigSettingsSection.
2009-06-07 11:22:09,984 [1] ERROR TMSPS.Core.PluginSystem.ConfigSettingsConfigurationSection [(null)] - Error while reading ConfigSettings from config file: ConfigSettings
2009-06-07 11:22:09,984 [1] ERROR TMSPS.Daemon.Program [(null)] - Unhandled error: System.Configuration.ConfigurationErrorsException: Could not find ConfigSettingsSection.
   at TMSPS.Core.PluginSystem.ConfigSettingsConfigurationSection.GetFromConfig(String sectionName) in D:\tmn\tmsps\Tags\NWO\TMSPS.Common\PluginSystem\ConfigSettingsConfigurationSection.cs:line 103
   at TMSPS.Daemon.MainDaemon.ReadConfigSettings() in D:\tmn\tmsps\Tags\NWO\TMSPS.Daemon\MainDaemon.cs:line 200
   at TMSPS.Daemon.MainDaemon.Start() in D:\tmn\tmsps\Tags\NWO\TMSPS.Daemon\MainDaemon.cs:line 75
   at TMSPS.Daemon.Program.RunInConsoleMode() in D:\tmn\tmsps\Tags\NWO\TMSPS.Daemon\Program.cs:line 68
   at TMSPS.Daemon.Program.Main(String[] args) in D:\tmn\tmsps\Tags\NWO\TMSPS.Daemon\Program.cs:line 45

Code: Select all

tmnforever is nations and united makes it special. tmnforever has united. I need united!

Subjaz
pedestrian
pedestrian
Posts: 8
Joined: 02 Jun 2009 15:32
Owned TM-games: TMF

Re: TMSPS : .Net based server control system

Post by Subjaz » 07 Jun 2009 09:29

I still dont know what to enter after adress...
can someone tell me?

User avatar
w1lla
TM-Patrol
TM-Patrol
Posts: 1466
Joined: 23 May 2007 07:20
Owned TM-games: TMU, TMN, TMF
Manialink(s): intr
Location: Venray

Re: TMSPS : .Net based server control system

Post by w1lla » 07 Jun 2009 09:45

hmm there are so many errors in debug.

if you want to make a stable release do 2 .xml files of each because it gets errors all over the place for nothing

Code: Select all

tmnforever is nations and united makes it special. tmnforever has united. I need united!

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 14:28

Wow, sorry. I have not got any alert that new articles were written here. I'll try to answer your questions now.


Requirements:
- you need the latest trackmania server version
- The main file to open is: $/Trunk/TMSPS.sln (This contains all projects)


First of all:

The test-client is nothing to start with. The client was used by me for testing new methods and callbacks - Please ignore the test-client. If you want to see what the client is doing, just have a look at the App_template.config file.

- Copy the file and rename it to App.config.
- Open the file and and change the following 3 lines to your server-settings:

<appSettings>
<add key="ServerAddress" value="192.168.1.3"/>
<add key="ServerXMLPort" value="4505"/>
<add key="SuperAdminPassword" value="passwordhere"/>
</appSettings>

- Compile the whole solution and start the test-client


The real program is: TMSPS.Daemon

There is also a file called App_template.config.

- Copy the file and rename it to App.config.
- Open the file and and change the following lines to your server settings:

<ConfigSettings
serverAddress="addresshere"
serverXMLRPCPort="porthere"
superAdminPassword="passwordhere"
serverNation="3 Letter Nation here"
serverLogin="login here"
serverLoginPassword="serverpassword here"
/>

- There is a Plugins-Folder, with lots of Subfolders. Each subfolder has a Settings.xml or Settings_Template.xml.
Rename the Settings_Templates.xml in each subfolder to Settings.xml and have a look inside it to change the settings to your needs.


Very important is:

/Trunk/TMSPS.Daemon/Plugins/Settings.xml. This file contains the plugins to load at startup:

Code: Select all


<?xml version="1.0" encoding="utf-8" ?>
<Settings>
	<Plugins>
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.KickUnrankedPlayerPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.NameProtectionBotPlugin" />
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.LiveRanking.LiveRankingPlugin" />
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.Dedimania.DedimaniaPlugin" />
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.LocalRecords.LocalRecordsPlugin" />
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.ChatBotPlugin" />
		<Plugin enabled="true"  assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.SpectatorsPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.TMX.TMXPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.AdminPlayer.AdminPlayerPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.Clock.ClockPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.StaticUI.StaticUIPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.CheckPoints.CheckPointsPlugin" />
		<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.IdleKick.IdleKickPlugin" />
	</Plugins>
</Settings>


You should disable this plugin:

<Plugin enabled="false" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.LocalRecords.LocalRecordsPlugin" />

Because this Plugins requires a Microsoft SQL-Server. Which isn't that easy to configure for you.

Maybe to just get you started... disable all plugins in this file and only enable:

<Plugin enabled="true" assemblyName="TMSPS.Core" pluginClass="TMSPS.Core.PluginSystem.Plugins.AdminPlayer.AdminPlayerPlugin" />

and then start to enable more and more Plugins.


VERY IMPORTANT: When you first open the solution and try to compile it, it will trow a lot of errors because you have to rename the App_template.config to App.config and the Settings_template.xml's to Settings.xml

When you're done with the renaming. Everything compiles fine. It's done this way because those files are unique to each developers and shouldn't be under source control. Thats why the _Template-Files exist.
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 14:30

Subjaz wrote:@Scordo
If i try to run the testclient it says the application configuration file is invalid, could not find app.config...
u know how to fix this problem?

edit: found it!

edit: What do I have to enter after: Address?

Found everything!
but in debuggin mode it says:
'IPHostEntry hostEntry = Dns.GetHostEntry(host);
'host' is unknown

Not fixed yet
Now the Console mode tmsps says: Daemon socket error occured!
You have to rename App_Template.config to App.config and should change the following lines to reflect your server changes:

<appSettings>
<add key="ServerAddress" value="192.168.1.3"/>
<add key="ServerXMLPort" value="4505"/>
<add key="SuperAdminPassword" value="passwordhere"/>
</appSettings>
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

User avatar
xai
happy cruiser
happy cruiser
Posts: 162
Joined: 13 Nov 2008 15:46
Owned TM-games: TMU(F),TMN(F)
Manialink(s): xai

Re: TMSPS : .Net based server control system

Post by xai » 08 Jun 2009 14:52

I'm new to C# but I'm willing to learn it. If I think I know it well enough to help you with something I'll tell you ;), as far as it looks now it even looks a tiny bit like php, and I'm good at that :P
Weeeeeeeeeeee

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 14:56

TheM wrote:Just want to try some things... but which file do I have to open when I click "Open project..." ?
/Trunk/TMSPS.sln
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 14:59

xai wrote:I'm new to C# but I'm willing to learn it. If I think I know it well enough to help you with something I'll tell you ;), as far as it looks now it even looks a tiny bit like php, and I'm good at that :P
the language-elements like loops, conditionals and so on are very close. But the main difference is, that every variable as a type and that all assignments are type-safe.

So you cant assign a variable of type string to a variable of type int without converting it before.

With Visual Studio you have Intellisense (AutoCompletion) everywhere because of typesafety.
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 15:05

w1lla wrote:hmm there are so many errors in debug.

if you want to make a stable release do 2 .xml files of each because it gets errors all over the place for nothing
This is a developer-version. In a normal release the Settings.xml files would be delivered in a usable way with default-values so the user only has to change 1 file to supply his server-settings.
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 15:07

If anyone has problems getting started with TMSPS in the DEV-Version feel free to contact me:

ICQ: 62036107
Skype: RealScordo

BTW: Please do not use the NWO-Tag-Version. This Version is an old Version made for a specific server. Please use the code Under $/Trunk. This is the latest release.
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 15:09

Subjaz wrote:I still dont know what to enter after adress...
can someone tell me?
Do you mean the the address in the app.config? You have to provide the IP-Address of your Trackmania-Server.
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

Scordo
cyclist
cyclist
Posts: 46
Joined: 01 Feb 2009 00:22
Owned TM-games: TMU

Re: TMSPS : .Net based server control system

Post by Scordo » 08 Jun 2009 20:31

For all you brave guys I've started to write a documentation to get you started at least with the TestClient. Just download the latest changeset and you'll find a word document located at the following path:

$/Trunk/DeveloperDocumentation.docx

on the project page: http://tmsps.codeplex.com/SourceControl ... mmits.aspx
Debuggers don't remove bugs, they only show them in slow motion

>> Help me and contribute to: TMSPS <<

User avatar
xai
happy cruiser
happy cruiser
Posts: 162
Joined: 13 Nov 2008 15:46
Owned TM-games: TMU(F),TMN(F)
Manialink(s): xai

Re: TMSPS : .Net based server control system

Post by xai » 09 Jun 2009 23:09

Scordo wrote:
xai wrote:I'm new to C# but I'm willing to learn it. If I think I know it well enough to help you with something I'll tell you ;), as far as it looks now it even looks a tiny bit like php, and I'm good at that :P
the language-elements like loops, conditionals and so on are very close. But the main difference is, that every variable as a type and that all assignments are type-safe.

So you cant assign a variable of type string to a variable of type int without converting it before.

With Visual Studio you have Intellisense (AutoCompletion) everywhere because of typesafety.
That wouldn't be a problem, cause I usually do that stuff anyway in php, since it's safer and faster :)
Weeeeeeeeeeee

Subjaz
pedestrian
pedestrian
Posts: 8
Joined: 02 Jun 2009 15:32
Owned TM-games: TMF

Re: TMSPS : .Net based server control system

Post by Subjaz » 10 Jun 2009 18:43

I've updated TMSPS!
I don't know how to signup for the project on codeplex :(
Can someone tell me?
Here I've a screenshot of what I did:
Look at the right of the screen...[...snipped...]

WTF..? It looks weird this way.
Think away the strange glow!
Last edited by Xymph on 10 Jun 2009 21:07, edited 1 time in total.
Reason: Use a web-friendly image format, not bloated BMP!

Post Reply