Ixtabay submitted a new resource:

MyRunUO for ServUO - Website and server scripts to display character, guild, and shard information for ServUO Ultima Onli

This is a complete drop in website to replace the old MyRunUO.

Scripts are included and have been updated for ServUO. Please read the installation instructions included.

  • Status checker on home page that shows whether or not your shard is online, and how many players, etc.
  • Automatically creates help page and logo based on your shard information (edit config file)
  • No coding necessary
  • All source included, psd, sql, .cs, .php
  • All images included
Go easy, it's...

Read more about this resource...
 
I was about to say... This looks awsome lol...

There is a guide included
How to setup MyRunUO.docx
 
This looks awesome!!!

could we possible get an "install guide"?

How should I go about adding this to my website?
Install guide is on github with the rest of the files
[doublepost=1482975498][/doublepost]
This looks awesome!!!

could we possible get an "install guide"?

How should I go about adding this to my website?
If you want, I can help you. You have a busy shard with many players and guilds, so it would help me further test and improve MyRunUO.
 
Im having trouble getting this to work under mono on debian 8
Server runs fine but database and website not working....

Mono limitation?
I get this in terminal everytime script tries to connect to database:

Code:
servuo@brains:~/neverybody$ make
`pwd`/ServUO.sh
--------------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 6209.34204
Publish 54
Core: Optimizing for 4 64-bit processors
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Core: Loading config...
Scripts: Compiling C# scripts...done (cached)
Scripts: Skipping VB.NET Scripts...done (use -vb to enable)
Scripts: Verifying...
Finished (5279 items, 1218 mobiles, 7 customs) (0.44 seconds)
Regions: Loading...done
World: Loading...
Loading Ultima Live map changes
...done (5537 items, 893 mobiles, 2 customs) (0.72 seconds)
Restricting client version to 7.0.55.4. Action to be taken: LenientKick
09:51:06 Joeku's Staff Runebook: Loading...
09:51:06 Listening: 127.0.0.1:2593
09:51:06 Listening: 127.0.0.2:2593
09:51:06 Listening: 192.210.231.7:2593
09:51:06 ----------------------------------------------------------------------
09:51:18 MyRunUO: Updating character database
09:51:19 MyRunUO: Exception caught in database thread
09:51:19 System.EntryPointNotFoundException: LocalAlloc
  at (wrapper managed-to-native) System.Data.Common.SafeNativeMethods:LocalAlloc (int,intptr)
  at System.Data.ProviderBase.DbBuffer..ctor (System.Int32 initialSize, System.Boolean zeroBuffer) [0x0003b] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.ProviderBase.DbBuffer..ctor (System.Int32 initialSize) [0x00000] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.Odbc.CNativeBuffer..ctor (System.Int32 initialSize) [0x00000] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.Odbc.OdbcCommand.GetStatementHandle () [0x00039] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.Odbc.OdbcCommand.ExecuteReaderObject (System.Data.CommandBehavior behavior, System.String method, System.Boolean needReader, System.Object[] methodArguments, System.Data.Odbc.ODBC32+SQL_API odbcApiMethod) [0x0001c] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.Odbc.OdbcCommand.ExecuteReaderObject (System.Data.CommandBehavior behavior, System.String method, System.Boolean needReader) [0x00022] in <a566c189d19d4271ab58420d6f875b13>:0
  at System.Data.Odbc.OdbcCommand.ExecuteNonQuery () [0x0000a] in <a566c189d19d4271ab58420d6f875b13>:0
  at Server.Engines.MyRunUO.DatabaseCommandQueue.Thread_Start () [0x001f4] in <b1ef9578942a43d8a130af22335cfac8>:0
09:51:19 MyRunUO: Database statements compiled in 0.40 seconds
09:51:19 MyRunUO: Characeter database updated in 0.2 seconds
shutdown
09:51:25 Core: Using dual save strategy
09:51:25 World: Saving...
09:51:25 Closing Save Files.
09:51:25 Save finished in 0.11 seconds.
 
You know, I have always had issues with mono and ODBC on linux. Here is a MySQL version of MyRunUO scripts for mono:

https://github.com/tbsampson/MyRunUO_MySQL

Installing .NET MySQL Connector
create a working directory (i.e. mysql)
Code:
mkdir mysql
cd mysql

Download the connector
Code:
wget https://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-6.9.9-noinstall.zip
unzip mysql-connector-net-6.9.9-noinstall.zip

Now add the 4.0 libs
Code:
cd v4.0
sudo gacutil /i /package 4.0 MySql.Data.dll
You should see:
Package exported to: /opt/local/lib/mono/4.0/MySql.Data.dll -> ../gac/MySql.Data/6.8.3.0__c5687fc88969c44d/MySql.Data.dll
Installed MySql.Data.dll into the gac (/opt/local/lib/mono/gac)

Now the 4.5 libs
Code:
cd ../v4.5
sudo gacutil /i /package 4.5 MySql.Data.dll
Package exported to: /opt/local/lib/mono/4.5/MySql.Data.dll -> ../gac/MySql.Data/6.8.3.0__c5687fc88969c44d/MySql.Data.dll
Installed MySql.Data.dll into the gac (/opt/local/lib/mono/gac)

verify
Code:
gacutil -l|grep MySql
MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d

Copy the MySql.Data.dll file to your server root folder (change path accordingly)
Code:
cp /opt/local/lib/mono/4.5/MySql.Data.dll /home/servuo/ServUO/

To use these in any of your ServUO scripts, you need to update the Makefile
Code:
nano Makefile

Change this:
REFS=System.Drawing.dll

To this:
REFS=System.Drawing.dll,System.Data.dll,MySql.Data.dll

This save
Add this to your scripts to use:
Code:
using MySql.Data;
using MySql.Data.MySqlClient;

If you are getting errors about MySql assembly reference, you may need to update your machine.config files
Code:
/etc/mono/4.0/machine.config
/etc/mono/4.5/machine.config
Edit these files, search for <system.data> and add this inside <DbProviderFactories>
Code:
            <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient"
                 description=".Net Framework Data Provider for MySQL"
                 type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

Update your /Data/Assemblies.cfg file and add Myql.Data.dll

Code:
System.dll
System.Core.dll
System.Data.dll
System.Data.DataSetExtensions.dll
System.Drawing.dll
System.Web.dll
System.Windows.Forms.dll
System.Xml.dll
System.Xml.Linq.dll
MySql.Data.dll

Microsoft.CSharp.dll

Ultima.dll
 
So everything is working great except paperdolls for characters show as a broken link. Not sure what I have done wrong. Am using your mono mysql version on debian 8
 
So everything is working great except paperdolls for characters show as a broken link. Not sure what I have done wrong. Am using your mono mysql version on debian 8
Check the path of the mul files and make sure it matches exactly (with proper case). Also chmod 755 the mulfiles directory.
 
Done and done. both seem fine, still broken paperdolls though. Im stumped and unfortunately have to head off to work
 
For what its worth it now works. The problem was I didnt have a trailing slash on the MUL path.... ie
works
$mulpath = "/home/admin/web/neverybody.org/public_html/MUL_FILES/";

does not work
$mulpath = "/home/admin/web/neverybody.org/public_html/MUL_FILES";

Hope this can help someone else in same position. Love this package.
 
Last edited:
First off I love this work you have done thank you so much. I am having a sudden problem with the "online" status updating to the website/database. It was working fine for days and then I went to check and it says offline but the server is running. The database IS updating character info and stats to the website so I know it is talking with my server AND I am getting a ping from the website that seems to be checking the status. I reinstalled everything from scratch a few times now and still same result. Everything is talking but the online status. Any ideas?
online.png
 
There is a small bug in mono version od code. To prevent MySql.Data.MySqlClient.MySqlException (0x80004005): Can't get stat of error, you must change:

Code:
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "LOCAL " : "", this.m_MobilesPath);
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters_skills FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "LOCAL " : "", this.m_SkillsPath);
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters_layers FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "LOCAL " : "", this.m_LayersPath);

to

Code:
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "" : "LOCAL ", this.m_MobilesPath);
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters_skills FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "" : "LOCAL ", this.m_SkillsPath);
this.ExecuteNonQuery("LOAD DATA {0}INFILE '{1}' INTO TABLE myrunuo_characters_layers FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n'", Config.DatabaseNonLocal ? "" : "LOCAL ", this.m_LayersPath);

in MyRunUO.cs
 
anychance anyone can help me with this it was working fine then all of a sudden the header and the paperpolls wont load. i changed nothing just stopped working. ai.imgur.com_A6EHR21.png
[doublepost=1539649520][/doublepost]Nevermind i fixed it display errors in php.ini got turned back on some how LOL thanks all
 
Install guide is on github with the rest of the files
[doublepost=1482975498][/doublepost]
If you want, I can help you. You have a busy shard with many players and guilds, so it would help me further test and improve MyRunUO.
Can you help with mine lol I have it on a dedicate server machine with My Shard server...I got the database built and the tables loaded But i cant find the files in my server to replace thats in the myruno up scripts driector in the folder you download to do this with My server is also Servuo
 
Can you help with mine lol I have it on a dedicate server machine with My Shard server...I got the database built and the tables loaded But i cant find the files in my server to replace thats in the myruno up scripts driector in the folder you download to do this with My server is also Servuo
The MyRunUO files you want to replace are in /Scripts/Services. Make sure you edit your database info in the PHP scripts. If you're on Linux, make sure you install the right ODBC connector. Once you're up and running watch the console for the message that it is updating the database and look for connection errors there. Sometimes Linux ODBC connections can be a pain. If you're on Windows it's a little easier. Also watch your permissions on config.php so no one can see your DB info (I'm sure you know this already). If you need any more help feel free to pm me or ask here. I'm running Debian 9 and it's a charm. The website he created is great, I'll be making changes to make it unique but will make sure credits are on the site. It's great to have paperdolls back, and the guild/player info is very nice. It also outputs some helpful text files in your root ServUO.
 
its 55.1 and there is no runuo files to be replaced but also it has vita-nex with similar files theres only 1 config file and none of the other 3 thats in the disto

Yes i agree it looks fantastic and we would love to get this going on ours Youre help is greatly appreciated
 
In the download you have a folder called scripts/MyRunUO. Those scripts need to replace the scripts in your servuo /Scripts/Services/MyRunUO folder. Vitanex isn't included with this, it's a whole separate system.
 
servuo /Scripts/Services/MyRunUO does not exist in version 55.1 thus the problem he and I are having. and Creating this folder and putting in the files that came with this system causes tons of errors. However we do both have vita-nex installed that has a file included called MySQL which contains the following
13339 so is there a way to edit the install method of this service using this instead?
 
we dont have a RunUO folder in our version of server We have scripts/services But no runuo folder I tryed putting it in there and it threw all kinds of errors

Ya i didnt think the vitaNex would be part of it i was just saying thats the only one we have with any Mysql files in it

Yes i got the downloaded folder that has the scripts and sql files and stuff for website in it Those are the ones im supposed to replace ours with but we dont have that folder or any of those files in our version of server lol Maybe we got a crazy version Its version 55.1
 
Vitanex is an extension system of functions by Voxpire that aren't used for this myrunuo system, it is a whole different system. The reason you don't have MyRunUO is probably because they removed it until they improved it during your ServUO publish. So, you need to add the MyRunUO folder from this project into your /scripts/customs or wherever you keep your custom scripts. If you already created and populated the database, you need to edit the configs for myrunuo, and then the config.php for the web site files where they need to go.. for example in most Linux distributions, it would be /var/www/html for Debian or Ubuntu systems. The MySQL files you're looking at in Vitanex are probably helper funtions Voxpire made for his VitaNex system.
 
Errors:
+ Customs/MyRunUO/MyRunUO.cs:
CS1061: Line 74: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'PublicMyRunUO' and no extension method 'PublicMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
CS1061: Line 80: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'PublicMyRunUO' and no extension method 'PublicMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
CS1061: Line 94: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'PublicMyRunUO' and no extension method 'PublicMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
CS1061: Line 100: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'PublicMyRunUO' and no extension method 'PublicMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
CS1061: Line 257: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'PublicMyRunUO' and no extension method 'PublicMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
CS1061: Line 438: 'Server.Mobiles.PlayerMobile' does not contain a definition for 'ChangedMyRunUO' and no extension method 'ChangedMyRunUO' accepting a first argument of type 'Server.Mobiles.PlayerMobile' could be found (are you missing a using directive or an assembly reference?)
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.


i thought it made sense I oput it in scrpits customs and configured everything but this is what happens when i try to start server now
 
I will upload my playermobile, you'll see where your missing a player flag and two bools. I'm not certain if your copy of servuo might be missing other edits, but at least it will get you a bit farther. Look for the PublicMyRunUO flag and bool and a ChangedMyRunUO bool. Make sure to back up your's first.
 

Attachments

  • PlayerMobile.cs
    198.8 KB · Views: 18
great Thank you
Post automatically merged:

Ok theree a errors which cactus is gonne see if he can figure them out but i have a question since its been a long time since i even tryed this I use to host a lineage 2 server that used MYSQL for everything...What do i need to install for this website to work I have mysql installed the Tables are loaded in it...What else is needed I have PHP But i cannot remember how to config it or get it to install Its just zip folder with all the files for it in it....Then were do i put the files from the distro folder i downloaded to make the site work and how exactly does it work Is it when you log into game or how ...Sorry im not very good at this But i can usually learn with a little directing...Me and cactus has been working on this server for about 3 months and think this would be an awesome addition if i can get it going Thank you for all you help I greatly apprecaie it and the oppurtunity to learn more stuff farher...
 
Last edited:
Ok we got it this far and server runs but i dont know were to put the website files at for sure and we are getting these errors on server screen

MyRunUO: Updating character database
MyRunUO: Unable to connect to the database
System.Data.Odbc.OdbcException (0x80131937): ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
at System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
at System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection, OdbcConnectionString connectionOptions)
at System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.Odbc.OdbcConnection.Open()
at Server.Engines.MyRunUO.DatabaseCommandQueue.Thread_Start() in c:\Users\dedicated\Desktop\ServUO-master\Scripts\Services\MyRunUO\DatabaseCommandQueue.cs:line 159
MyRunUO: Database statements compiled in 0.44 seconds
MyRunUO: Updating status database
MyRunUO: Unable to connect to the database


server is running Mysql is running but it says its not connecting to database any thing i can do to fix it Im In over my head i think been too long lol
 
Last edited:
i been messing with this all night and i got it to this point But something about this driver Maybe you can tell me if im going in right direction or not

MyRunUO: Updating character database
MyRunUO: Exception caught in database thread
System.Data.Odbc.OdbcException (0x80131937): ERROR [HY000] [MySQL][ODBC 5.3(w) Driver][mysqld-8.0.16]The used command is not allowed with this MySQL version
at System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader, Object[] methodArguments, SQL_API odbcApiMethod)
at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader)
at System.Data.Odbc.OdbcCommand.ExecuteNonQuery()
at Server.Engines.MyRunUO.DatabaseCommandQueue.Thread_Start() in c:\Users\dedicated\Desktop\ServUO-master\Scripts\Services\MyRunUO\DatabaseCommandQueue.cs:line 224
MyRunUO: Database statements compiled in 0.41 seconds
MyRunUO: Characeter database updated in 0.2 seconds
MyRunUO: Updating status database
MyRunUO: Status database updated in 0.0 seconds
 
Yeah the ODBC driver always gives me a hard time too. I'll look at my setup and see what version I used. It sounds like you've got all your folders right from what I see in your post. I think I'm using an older version of the odbc connector. I'm not 100% sure, but from the errors posted it might be a compatibility issue with the newer connector you have. I'll look and post which version I use after work.
 
Back