A hooded figure watching guards in a torch-lit town square at night in Kingdom Come: Deliverance II

FOR FIVEM DEVELOPERS

Your FiveM skills, in medieval Bohemia.

If you have built resources for a FiveM server, you already know how Kingdoms Connected works: resources, server and client scripts, events, state bags and HTML interfaces. Here is how the concepts map to Kingdom Come: Deliverance II.

Why build for KCD2

FiveM showed what communities can build on top of a great game: roleplay cities, economies, factions and custom interfaces. Kingdom Come: Deliverance II offers a different stage: a detailed medieval world with towns, castles, trade, horses and melee combat. Kingdoms Connected is the multiplayer layer and scripting framework that makes it a platform for server creators.

It is early. The mod is live, servers hold up to 512 players, and the first communities are forming now. That is the opportunity: the first great KCD2 servers have not been built yet.

FiveM concepts and their KCD2 equivalents

The names differ, and FiveM resources are not drop-in compatible, but the architecture is familiar enough that most of your instincts carry over.

What a resource looks like

A server script that greets players and hands out a horse on request. The server half runs in Node.js on the dedicated server; client halves run in each player’s game in a sandboxed V8.

Events.on("playerSpawned", (player) => {
    Chat.sendToPlayer(player, `Welcome, ${player.nickname}. Type /horse for a ride.`);
});

Events.on("playerCommand", (player, command) => {
    if (command !== "horse" || !player.ready) return;
    Horse.spawn(player.position, undefined, undefined, `${player.nickname}'s horse`);
});

Write your first resource builds exactly this, step by step, and Use TypeScript sets up typed declarations for the whole API.

What is different

  • Player authority. KCD2 keeps a player’s state on their own machine, so the owning client is the authority for its own body and the server for everything shared. Most verbs return whether a request went out, not whether it worked.
  • Room to grow. Up to 512 players per server, enough for full roleplay cities.
  • A medieval toolbox. Instead of vehicles and weapons, you script NPCs, horses and dogs, quests in the journal, dialogue choices, shops, doors, gates and stashes.
  • No Lua. JavaScript and TypeScript only, with generated type declarations for every function.

Get started

Read the scripting documentation, run a server with the default game mode, then pitch your idea to the team on Discord. Planning a roleplay community? See KCD2 roleplay servers.

FREQUENTLY ASKED

Coming from FiveM,
answered.

Straight answers, taken from the Kingdoms Connected documentation.

Can I run my FiveM resources on Kingdoms Connected?

No. Kingdoms Connected is a different game and a different framework, so FiveM resources are not drop-in compatible. The concepts carry over (resources, server and client scripts, events, state bags, HTML interfaces), so porting the logic of a JavaScript resource is often straightforward.

Does Kingdoms Connected support Lua?

No. Resources are written in JavaScript or TypeScript. The server runs them in Node.js and each client runs them in a sandboxed V8.

Is there an equivalent to fxmanifest.lua?

Yes: a resource is a folder with a package.json, and a mafiahub block in it lists serverScripts, clientScripts, sharedScripts, files, exports and dependencies.

Are there routing buckets?

Yes, called virtual worlds. Every entity carries a world number, and players only see entities in their own world, so you can run an arena or an instance on the same map.

How many players can a server hold compared to FiveM?

Kingdoms Connected servers hold up to 512 players, enough for full roleplay cities and large-scale battles.