Xim: Browser-based Client Simulator

Eorzea Time
 
 
 
Language: JP EN FR DE
users online
Forum » FFXI » Dat Modding » Xim: Browser-based Client Simulator
Xim: Browser-based Client Simulator
 Asura.Aamace
Offline
Server: Asura
Game: FFXI
user: Aamace
Posts: 3
By Asura.Aamace 2025-12-22 12:06:23
Link | Quote | Reply
 
Hello - I'd like to share my hobby project: https://xim.pages.dev/

Feature Summary:
  • View FFXI assets in a browser-based client simulation

  • Download the source-code and explore/run locally (under the "Source" header)

  • Play a proof-of-concept game (under the "Apps" header)



Implementation Details:

Limitations:

Known Issues:

Tips & Tricks:

Further development:
I probably won't have availability to develop new features at this point. If there's interest, I can improve documentation, though.

The project is licensed under GPL3, so you can fork the project if you'd like.

---

Thanks for taking a look! Feel free to ask any questions.
[+]
Offline
Posts: 2412
By Felgarr 2025-12-22 13:08:33
Link | Quote | Reply
 
This is literally incredible. One day, because of your work, I will be able to play FFXI on an actual toaster.
[+]
Offline
Posts: 50
By premiumvirtue 2025-12-22 13:40:36
Link | Quote | Reply
 
This is incredible, thank you so much for sharing and allowing people to use your source code.
[+]
 Asura.Crevox
Offline
Server: Asura
Game: FFXI
user: Crevox
Posts: 378
By Asura.Crevox 2025-12-22 18:28:23
Link | Quote | Reply
 
Amazing project all around...

I hate to have any sort of complaint at all given how polished it is, but it seems like some of the later spell/ability effects are not functioning properly. For example, Refresh III, Full Cure, and Mighty Guard. The former two play a summoning cast animation (then do nothing), and the latter plays a white magic cast animation (then does nothing). Utsusemi: San works, but it seems like the ripple graphic effects do not render properly. Some others are incorrectly mapped (Noctoshield plays Nether Blast?).

The engine crashed trying to go to Legion: https://imgur.com/a/XOEqg5W


Thank you very much for sharing!
[+]
 Asura.Aamace
Offline
Server: Asura
Game: FFXI
user: Aamace
Posts: 3
By Asura.Aamace 2025-12-22 19:12:32
Link | Quote | Reply
 
Asura.Crevox said: »
I hate to have any sort of complaint at all given how polished it is, but it seems like some of the later spell/ability effects are not functioning properly...

Ah, thank you for pointing this out. I should have added this in the "limitations" section. The mapping from Spells/Abilities/etc to animation-IDs is done server-side (weirdly enough). I'm using the data from LandSandBoat here as well. From my understanding, that project is mainly focused on earlier era content, so the mapping isn't exhaustive.

These animations can still be executed, but it requires knowing their IDs. For example, "Mighty Guard" is 0xEDA, so it can be executed by entering EDA into the "Path" input at the bottom. I found some of these IDs by using a Windower addon that logs packet-data & executing the spell, and some by just browsing through the animations (hitting the ">" button over and over).

The issue with pet-skill animations was something I meant to fix but forgot about (oops).

For Utsusemi: San, I see that the yellow-ripple particle isn't tracking properly. The distortion effect also looks a bit off, but those are... tricky. I'll see if I can address that.

Edit:
Asura.Crevox said: »
The engine crashed trying to go to Legion: https://imgur.com/a/XOEqg5W

LegionB (287), right? Interestingly, the resource-file has an invalid format (too many "end" markers), and is missing critical sections for zone resources (like the weather definition). I think this zone isn't used in-game, but I'm not sure. If I patch the engine to ignore those issues, the zone looks pretty much the same as LegionA.
[+]
 Asura.Crevox
Offline
Server: Asura
Game: FFXI
user: Crevox
Posts: 378
By Asura.Crevox 2025-12-22 20:36:33
Link | Quote | Reply
 
Asura.Aamace said: »
LegionB (287), right? Interestingly, the resource-file has an invalid format (too many "end" markers), and is missing critical sections for zone resources (like the weather definition). I think this zone isn't used in-game, but I'm not sure. If I patch the engine to ignore those issues, the zone looks pretty much the same as LegionA.

Yeah, it was Legion B. I'm not sure if it's specifically the Ambuscade version of Legion or what its actual use is (or if it even has one), I just tried loading it and got that error, so I thought I should mention it.
[+]
Offline
By LightningHelix 2025-12-22 21:14:56
Link | Quote | Reply
 
Asura.Aamace said: »
LegionB (287), right? Interestingly, the resource-file has an invalid format (too many "end" markers), and is missing critical sections for zone resources (like the weather definition). I think this zone isn't used in-game, but I'm not sure. If I patch the engine to ignore those issues, the zone looks pretty much the same as LegionA.

(Asura, right now)

They're both used for Ambuscade! (...and Legion, as the name implies.)

They look identical on retail afaik, zero differences I know of.
 Asura.Aamace
Offline
Server: Asura
Game: FFXI
user: Aamace
Posts: 3
By Asura.Aamace 2025-12-22 21:41:18
Link | Quote | Reply
 
LightningHelix said: »
They're both used for Ambuscade! (...and Legion, as the name implies.)

They look identical on retail afaik, zero differences I know of.

Oh, interesting! I was able to get in the zone and confirm that the resource actually does get loaded & works in-game. I'll add that to the list.