Rutibex updated Shards of Minax with a new update entry:

Shards of Minax v87 – The Invasion Begins!

View attachment 25923

Shards of Minax v87 – The Invasion Begins!​

Welcome, adventurers, to Version 87 of Shards of Minax—our biggest update yet! We've packed this patch with powerful new features, game-changing systems, and a serious upgrade to the world of single-player Ultima. Whether you're a peaceful camper or a war-hardened mage, there's something here for you.

Invasions Evolved​

The Invasion System just got a...

Read the rest of this update entry...
 
Every time I come back to servuo, the level of additional updates and work on this project blows my mind. Rutibex, massive massive props.

How much of this was made possible with vibe coding?
hahaha I am a librarian. before 2020 I knew nothing about C#. ChatGPT taught me everything.

Though there is many scripts written by actual programmer who posted it publicly, and I just modified them. And Azrok added a few things personally
 
I'm sorry but I do not know what is happening. It might be something to do with your operating system or version of .net but I have no real idea. I can not reproduce this error

This is ChatGPTs best guess (it got confused about the character ❤ = $)

When you compile on a machine whose default “ANSI” code page isn’t UTF-8 (for example, Chinese Windows using GBK/CP936), that little red heart character (❤) in your .cs file actually becomes two bytes and thus two “characters” when the C# parser reads it as a character literal. That explains why on your machine (where your editor is probably saving the file as UTF-8) it shows up as one character, but on theirs it looks like two.

What’s happening under the hood
Character literal ('❤') in C# must be exactly one UTF-16 code unit.

In GBK/CP936, the heart glyph isn’t in the single‐byte table and is stored as a multi‐byte sequence.

When the compiler opens the file using the system ANSI code page, it sees two 8-bit values, thinks you wrote something like '\xXX\xYY', and complains “too many characters in character literal” (and “unexpected character …”).

Two easy fixes
Save the source as UTF-8 (with BOM)

In Visual Studio (or your editor), choose File → Save As → Save with Encoding → UTF-8 with signature (BOM).

This lets any Windows machine know “hey, this file is UTF-8,” so the compiler will read ❤ as one Unicode character.

Use an explicit Unicode escape or string
Replace your literal with one of these:


// As a char (single code‐unit)
char heart = '\u2764';

// Or as a string literal
string heart = "❤";
That way you don’t depend on file encoding or code pages at all.
 
Last edited:
I'm sorry but I do not know what is happening. It might be something to do with your operating system or version of .net but I have no real idea. I can not reproduce this error

This is ChatGPTs best guess (it got confused about the character ❤ = $)

When you compile on a machine whose default “ANSI” code page isn’t UTF-8 (for example, Chinese Windows using GBK/CP936), that little red heart character (❤) in your .cs file actually becomes two bytes and thus two “characters” when the C# parser reads it as a character literal. That explains why on your machine (where your editor is probably saving the file as UTF-8) it shows up as one character, but on theirs it looks like two.

What’s happening under the hood
Character literal ('❤') in C# must be exactly one UTF-16 code unit.

In GBK/CP936, the heart glyph isn’t in the single‐byte table and is stored as a multi‐byte sequence.

When the compiler opens the file using the system ANSI code page, it sees two 8-bit values, thinks you wrote something like '\xXX\xYY', and complains “too many characters in character literal” (and “unexpected character …”).

Two easy fixes
Save the source as UTF-8 (with BOM)

In Visual Studio (or your editor), choose File → Save As → Save with Encoding → UTF-8 with signature (BOM).

This lets any Windows machine know “hey, this file is UTF-8,” so the compiler will read ❤ as one Unicode character.

Use an explicit Unicode escape or string
Replace your literal with one of these:


// As a char (single code‐unit)
char heart = '\u2764';

// Or as a string literal
string heart = "❤";
That way you don’t depend on file encoding or code pages at all.

I replaced the wrong file with another one, and it can now be started. The issue has been resolved.
 
Rutibex updated Shards of Minax with a new update entry:

v09 Sosaria!

View attachment 26101 Shards of Minax – Version 0.9 Update

“Through blood, fire, and forgotten stars, Sosaria awakens.”

Welcome, brave adventurers, to the biggest Shards of Minax update yet. Version 0.9 opens the gates to an astonishing new era for our custom ServUO shard—one that will challenge your mind, test your strength, and immerse you in a world more expansive and mysterious than ever before.

This update introduces an...

Read the rest of this update entry...
 
Nope. No matter how many times I have tried it, I could not run it. I got the latest version and it still is not working. I wish I could 🙁

Error:
System.Reflection.TargetInvocationException: Exception was thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at: VitaNex.VitaNexCore.DisplayRetroBoot() in C:\Users\DELL\Desktop\UCA\4. Shards of Minax\Shards_of_Minax\server_files\Scripts\VitaNex\Core\VitaNex.cs:line 917
at: VitaNex.VitaNexCore.Configure() in C:\Users\DELL\Desktop\UCA\4. Shards of Minax\Shards_of_Minax\server_files\Scripts\VitaNex\Core\VitaNex.cs:line 212
--- End of inner exception stack trace ---
at: System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at: System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at: System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at: System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at: EdrDotNet.Hooks.MethodInfoInvokeHook.InvokeHandler(Object method, Object obj, Object[] parameters)
at: Server.ScriptCompiler.Invoke(String method) in C:\Users\DELL\Desktop\UCA\4. Shards of Minax\Shards_of_Minax\server_files\Server\ScriptCompiler.cs:line 525
at: Server.Core.Main(String[] args) in C:\Users\DELL\Desktop\UCA\4. Shards of Minax\Shards_of_Minax\server_files\Server\Main.cs:line 637
This exception is fatal, press return to exit

If you can help me with this, I would very much like to try your work
 
Make sure you have the correct datapath in Datapath.cfg. It should point to Cliant_Files
I will try that and give an update. Thank you
I will try that and give an update. Thank you
Same 🙁

System.Reflection.TargetInvocationException: An exception was thrown by the target of a call.
---> System.NullReferenceException: Object reference not set to an instance of an object.
 at VitaNex.VitaNexCore.DisplayRetroBoot()
 at VitaNex.VitaNexCore.Configure()
--- End of inner exception stack trace ---
 at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
 at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
 at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
 at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
 at EdrDotNet.Hooks.MethodInfoInvokeHook.InvokeHandler(Object method, Object obj, Object[] parameters)
 at Server.ScriptCompiler.Invoke(String method)
 at Server.Core.Main(String[] args)


This exception is fatal. Press Return to exit.
 
Last edited:
Shard Of Minax uses VitaNex? Just checking, as this looks like a compatibility issue, Vita requires newer c# framework and will not work on older servers from what I have seen! Not 100% sure what Minax has so am poking at possible reasons why!
 
Rutibex updated Shards of Minax with a new update entry:

Shards of Minax v0.91 – The World Grows

View attachment 26380 Shards of Minax v0.91 – The World Grows

Adventurers, prepare yourselves!

The time has come for the largest and most ambitious update in the history of Shards of Minax. Version 0.91 marks a turning point in our world’s fate—a massive leap forward in content, world-building, and gameplay depth.

This is not just an update. It is the evolution of Britannia itself.


Lore Update: A...


Read the rest of this update entry...
 
Repeatable crash after some minutes of running server.

Server Crash Report
===================

ServUO Version 0.5, Build 9239.29516
Operating System: Microsoft Windows NT 6.2.9200.0
.NET Framework: 4.0.30319.42000
Time: 8/13/2025 6:20:25 PM
Mobiles: 85473
Items: 501664
Exception:
System.DivideByZeroException: Attempted to divide by zero.
at Server.Items.RandomItemGenerator.GetBaseBudget(BaseCreature bc)
at Server.Items.RandomItemGenerator.GetDifficultyFor(BaseCreature bc)
at Server.Items.RunicReforging.GenerateRandomItem(Item item, Mobile killer, BaseCreature creature)
at Server.LootPackEntry.Mutate(Mobile from, Int32 luckChance, Item item)
at Server.LootPack.Generate(Mobile from, Container cont, Boolean spawning, Int32 luckChance)
at Server.Mobiles.BaseCreature.AddLoot(LootPack pack)
at Server.Mobiles.BaseCreature.AddLoot(LootPack pack, Int32 amount)
at Server.Mobiles.Chamois.GenerateLoot()
at Server.Mobiles.BaseCreature.GenerateLoot(Boolean spawning)
at Server.Mobiles.BaseCreature.OnBeforeDeath()
at Server.Mobile.Kill()
at Server.Mobile.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
at Server.Mobiles.BaseCreature.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
at Server.AOS.Damage(IDamageable damageable, Mobile from, Int32 damage, Boolean ignoreArmor, Int32 phys, Int32 fire, Int32 cold, Int32 pois, Int32 nrgy, Int32 chaos, Int32 direct, Boolean keepAlive, DamageType type)
at Server.Engines.XmlSpawner2.XmlBubbleShield.DoBubbleBurst()
at Server.Engines.XmlSpawner2.XmlBubbleShield.OnThink()
at Server.Timer.DelayCallTimer.OnTick()
at Server.Timer.Slice()
at Server.Core.Main(String[] args)

Edit:
Disregard, it was messed up config.
 
Last edited:
The read me says to use the "run server" file. Which dose not seem to be there. Do i compile then run ServUO ?? Getting errors about chain vest not existing and it asks me to remove it, then shuts down
...tried the previous build also. Guess I just dont know how to run this.
 
Last edited:
The read me says to use the "run server" file. Which dose not seem to be there. Do i compile then run ServUO ?? Getting errors about chain vest not existing and it asks me to remove it, then shuts down
...tried the previous build also. Guess I just dont know how to run this.
Hey there! I ran into this issue too and worked to track down the issue. It appears the "DataPath.cfg" file found in Shards_of_Minax\server_files\Config is not set properly and I had to update the directory to "CustomPath=C:\Shards_of_Minax\Client_files" in that config file. I still got an error about a gingerbreadcookie tile, which I deleted, and was able to get the world to launch afterwards. I attached an image to show you where I fixed the issue. Hope this helps!
 

Attachments

  • shards-error.png
    shards-error.png
    31.5 KB · Views: 34
Rutibex updated Shards of Minax with a new update entry:

v092 Update

View attachment 26959
A small update today

-Many bug and stability fixes
-Updated about half of the skill codex, they are now much better
-Restored the original Felucca and moved the enhanced map it its own facet
-Major rework of the procedural wilderness encounter system
-New Starting Scenerios let you specialize in one area. You can also start as an orc, skeleton, or dolphin!

Read the rest of this update entry...
 
Rutibex updated Shards of Minax with a new update entry:

Shards of Minax — Version 0.93

View attachment 27312

Shards of Minax — Version 0.93​

Systems Reforged. Power Unleashed. No Limits.

Version 0.93 is one of the largest foundational updates in Shards of Minax history. Nearly every core system has been rewritten, expanded, or elevated to support deeper character builds, smarter enemies, and long-term progression without hard ceilings.

This isn’t just a patch.

It’s an evolution...

Read the rest of this update entry...
 
Good evening! I have tried a number of times to connect with the server, and have been unsuccessful. I believe that I have followed your instructions carefully. Can you please expand the instructions a bit so a network imbecile lie me can understand what to do? Many thanks!
 
I got this server crash when someone (maybe a guard) attacked me
Exception:
System.NullReferenceException:
в Server.Engines.XmlSpawner2.XmlGroundSlam.GetKnockBackPoint(Mobile owner, Mobile target, Int32 distance)
в Server.Engines.XmlSpawner2.XmlGroundSlam.PerformGroundSlam(Mobile owner)
в Server.Engines.XmlSpawner2.XmlGroundSlam.OnWeaponHit(Mobile attacker, Mobile defender, BaseWeapon weapon, Int32 damageGiven)
в Server.Engines.XmlSpawner2.XmlAttach.OnWeaponHit(BaseWeapon weapon, Mobile attacker, Mobile defender, Int32 damage)
в Server.Items.BaseWeapon.OnHit(Mobile attacker, IDamageable damageable, Double damageBonus)
в Server.Items.BaseWeapon.OnSwing(Mobile attacker, IDamageable damageable, Double damageBonus)
в Server.Items.Fists.OnSwing(Mobile attacker, IDamageable defender)
в Server.Mobile.CombatTimer.OnTick()
в Server.Timer.Slice()
в Server.Core.Main(String[] args)
 
Good evening! I have tried a number of times to connect with the server, and have been unsuccessful. I believe that I have followed your instructions carefully. Can you please expand the instructions a bit so a network imbecile lie me can understand what to do? Many thanks!
What are you doing to connect that isn't working?
I got this server crash when someone (maybe a guard) attacked me
Thank you for the report! Here is the fix
 

Attachments

Last edited:
Good morning,

Thanks for looking at this for me . . .
This is my server.config file:
# The displayed name of the shard
Name=Maxxia

# The default setting for Address, a value of 'null', will use your local IP address.
# If all of your local IP addresses are private network addresses and AutoDetect is 'true'
# then ServUO will attempt to discover your public IP address for you automatically.
AutoDetect=True

# If you do not plan on allowing clients outside of your LAN to connect,
# you can set AutoDetect to 'false' and leave Address set to 'null'.
#
# If your public IP address cannot be determined, you must change the value
# of Address to your public IP address
# manually to allow clients outside of your LAN to connect to your server.
# Address can be either an IP address or a hostname that will be resolved
# when ServUO starts.
#
# If you want players outside your LAN to be able to connect to your server
# and you are behind a router,
# you must also forward TCP port 2593 to your private IP address.
# The procedure for doing this varies by manufacturer but generally involves
# configuration of the router through your web browser.
@Address=null

# The Port to bind the Listener to.
# Default: 2593
@Port=2593


When I run the server, I get a ton of "Failed to load" errors. This is what is returned when I run the server:

[VitaNexCore]:
[VitaNexCore]: Compile action started...
[VitaNexCore]: Compiling Services...
[VitaNexCore]: Compiling Modules...
[VitaNexCore]: Compile action completed in 0.02 seconds
[VitaNexCore]:
[VitaNexCore]: Configure action started...
[VitaNexCore]: Configuring Services...
[VitaNexCore]: Warning: Conflicting Alias ID: 1217873814
Server.Mobiles.SacredHart <> Server.Mobiles.SacredHart
[VitaNexCore]: Configuring Modules...
[VitaNexCore]: Configure action completed in 0.51 seconds
[VitaNexCore]: System.NullReferenceException: Object reference not set to an instance of an object.
at System.ObjectExtUtility.GetEventDelegates(Object obj, String eventName)
at VitaNex.VitaNexCore.Configure()
Regions: Loading...Could not parse integer attribute 'z' in element 'go'
Could not parse integer attribute 'z' in element 'go'

I am stumped.
 
Last edited:
Good morning,

Thanks for looking at this for me . . .
This is my server.config file:
# The displayed name of the shard
Name=Maxxia

# The default setting for Address, a value of 'null', will use your local IP address.
# If all of your local IP addresses are private network addresses and AutoDetect is 'true'
# then ServUO will attempt to discover your public IP address for you automatically.
AutoDetect=True

# If you do not plan on allowing clients outside of your LAN to connect,
# you can set AutoDetect to 'false' and leave Address set to 'null'.
#
# If your public IP address cannot be determined, you must change the value
# of Address to your public IP address
# manually to allow clients outside of your LAN to connect to your server.
# Address can be either an IP address or a hostname that will be resolved
# when ServUO starts.
#
# If you want players outside your LAN to be able to connect to your server
# and you are behind a router,
# you must also forward TCP port 2593 to your private IP address.
# The procedure for doing this varies by manufacturer but generally involves
# configuration of the router through your web browser.
@Address=null

# The Port to bind the Listener to.
# Default: 2593
@Port=2593


When I run the server, I get a ton of "Failed to load" errors. This is what is returned when I run the server:

[VitaNexCore]:
[VitaNexCore]: Compile action started...
[VitaNexCore]: Compiling Services...
[VitaNexCore]: Compiling Modules...
[VitaNexCore]: Compile action completed in 0.02 seconds
[VitaNexCore]:
[VitaNexCore]: Configure action started...
[VitaNexCore]: Configuring Services...
[VitaNexCore]: Warning: Conflicting Alias ID: 1217873814
Server.Mobiles.SacredHart <> Server.Mobiles.SacredHart
[VitaNexCore]: Configuring Modules...
[VitaNexCore]: Configure action completed in 0.51 seconds
[VitaNexCore]: System.NullReferenceException: Object reference not set to an instance of an object.
at System.ObjectExtUtility.GetEventDelegates(Object obj, String eventName)
at VitaNex.VitaNexCore.Configure()
Regions: Loading...Could not parse integer attribute 'z' in element 'go'
Could not parse integer attribute 'z' in element 'go'

I am stumped.
Is Datapath.cfg pointing to the correct directory? that is usually the issue
 
Hello, I’m a new player on Shards of Minax and I’m still learning the basics.

Could anyone share some guides or tips on how to level up my skills efficiently?

I would really appreciate any help.
 
Hello, I’m a new player on Shards of Minax and I’m still learning the basics.

Could anyone share some guides or tips on how to level up my skills efficiently?

I would really appreciate any help.
Most skills should work like they do in retail. If you google "ultima online carpentry skill guide", most of the results will work pretty close to whats around
 
Man, I do not know what's wrong with your releases. It doesn't run out of the box, and the build breaks down because there are no references "Server\Mobile.cs(3954,19): error CS0246: The type or namespace name 'ProcContext' could not be found (are you missing a using directive or an assembly reference?)"


ModernStatusGump fix: in file "Shards_of_Minax\TazUO Custom\Data\UI\ClassicUO.Game.UI.Gumps.StatusGumpModern.json"
set value for "Graphic_Background" to 10861
 
Last edited:
Man, I do not know what's wrong with your releases. It doesn't run out of the box, and the build breaks down because there are no references "Server\Mobile.cs(3954,19): error CS0246: The type or namespace name 'ProcContext' could not be found (are you missing a using directive or an assembly reference?)"


ModernStatusGump fix: in file "Shards_of_Minax\TazUO Custom\Data\UI\ClassicUO.Game.UI.Gumps.StatusGumpModern.json"
set value for "Graphic_Background" to 10861
Did you set up Serverpath.cfg correctly? thats the issue most people have
 

Donations

Total amount
$50.00
Goal
$500.00

Shards

Back