Skip to content

Latest commit

 

History

History
131 lines (126 loc) · 4.06 KB

readme.md

File metadata and controls

131 lines (126 loc) · 4.06 KB

Overview

This tool began as a small app for working with L2 client quest files and has evolved into a full-fledged .dat editor with additional functionality. L2w_tool is written in Rust and does not depend on any other common L2 software, such as l2encdec or ACME tools. However, it does rely on OpenSSL development libraries, making compilation for Windows a hassle. (There are plans to replace OpenSSL with a pure Rust solution.)


Dat Editor

Description

The main idea behind this software is to consolidate .dat files and work with the final game entities, rather than managing multiple files simultaneously, as in L2DatEditor.

Usage

Define path to system folder in settings

Optionally define path to quest scripts folder

Press Entity Catalog top menu button to open entity catalog

img.png

Entities

  • Skill (skillsoundsource,msconditiondata, skillname, skillgrp, skillsoundgrp )
  • Npc (npcgrp, additionalnpcgrpparts, npcname-ru, mobskillanimgrp)
  • Quest (questname)
  • Recipe (recipe)
  • Items (additionalitemgrp, itemstatdata, item_baseinfo, itemname)
    • Weapon (weapongrp)
    • Armor (armorgrp)
    • Etc (etcitemgrp)
  • Item Set (setitemgrp)
  • Hunting Zone (huntingzone)
  • Weapon Enchant Effect
  • Armor Enchant Effect
  • Ensoul
  • Instant Zone
  • Daily Missions (onedayreward)
  • Map Regions (zonename, minimapregion)
  • Raid Info (raiddata)
  • Lifestone Options
  • Animation Combo (animationcombo)
  • Residence (castlename)

Features

  • .dat enc/dec, ser/de
  • Autosave opened tabs (to .asave file, Bincode format)
  • Import/Export for Entities (in Ron format)
  • Search by:
    • IDs
    • ID ranges (r:START-END, r:START)
    • Custom fields (mesh:String, texture:String, effect:String, rb: u32(RaidId) )
  • String dats editor
    • Npc Strings (npstring)
    • System Strings (sysstring)
    • System Message (systemmsg)
    • Server Name (servername)
  • Graph based quest step editor
  • Modified status for opened Entities
  • Delete Entity
  • Modified/deleted status in catalogs
  • In app logs
  • Search history
  • Quest script template generation + editor
  • Dump all entities to .ron
  • Scripts (rhai lang)

Spawn viewer

Description

This software displays NPC spawns on the game map. The spawn data is parsed from XML files that follow the common L2J schema.

<!ELEMENT list (spawn|territory)*>
<!ELEMENT spawn (debug|territory|npc|point|territoryName)*>
<!ATTLIST spawn
	group CDATA #IMPLIED
	respawn CDATA #IMPLIED
	count CDATA #IMPLIED
	respawn_random CDATA #IMPLIED
	period_of_day CDATA #IMPLIED
	maker CDATA #IMPLIED>
<!ELEMENT debug (#PCDATA)>
<!ATTLIST debug
	name CDATA #IMPLIED
	val CDATA #IMPLIED>
<!ELEMENT territory (banned_territory|add)*>
<!ATTLIST territory
	name CDATA #IMPLIED
	name_debug CDATA #IMPLIED
	superPoint CDATA #IMPLIED>
<!ELEMENT territoryName (#PCDATA)>
<!ATTLIST territoryName
	name CDATA #IMPLIED>
<!ELEMENT banned_territory (add)*>
<!ELEMENT add (#PCDATA)>
<!ATTLIST add
	x CDATA #REQUIRED
	y CDATA #REQUIRED
	zmin CDATA #REQUIRED
	zmax CDATA #REQUIRED>
<!ELEMENT npc (set)*>
<!ATTLIST npc
	id CDATA #REQUIRED
	max CDATA #IMPLIED>
<!ELEMENT set (#PCDATA)>
<!ATTLIST set
	name CDATA #REQUIRED
	value CDATA #REQUIRED>
<!ELEMENT point (#PCDATA)>
<!ATTLIST point
	x CDATA #REQUIRED
	y CDATA #REQUIRED
	z CDATA #REQUIRED
	h CDATA #IMPLIED
	superPoint CDATA #IMPLIED>

Usage

Define path to folder with spawn files in settings

Press Spawn Viewer top menu button to open spawn viewer window

img.png

Features

  • Show spawns for NpcId
  • Show spawns in selected region
  • Draw polygon and display in:
    • Spawn format
    • Zone format
    • Custom format
  • Draw multiple polygons
  • Show spawn walk paths
  • Map layers (for dungeons/towers)
  • Z coord from geodata

Dev TODO

  • Parallel save to .dat
  • Add confirmation at skill enchant deletion
  • Get rid of openssl dependency