QuickEdit - a mod editor for Hitman 2

I’ve made a mission creator. You give it objectives through a GUI, it gives you a mod file. Alternatively, it can output a mission script for advanced users to edit manually.

You can add targets with names and choose whether they should be hidden in Instinct as well as a bunch of other attributes, or you can choose the more advanced Flow editor.

Want to create a mission in which you have to carry out a series of strange tasks like hitting Silvio Caruso with a wrench and trespassing on private property, all while a timer is ticking down, forcing you to kill non-targets to reset it? You can do that!

I’ll be adding more features as time goes on. Currently, you can:

  • Add either targets or Flow objectives
  • Configure the mission with a large number of parameters, like when exits should be enabled and what features should appear in the map
  • Put together any combination of conditions, events, timers and states to create an objective for almost anything in the game through the Flow editor
  • Set an action to happen upon any combination of 55 events in addition to the standard “Player killed NPC” event, like trespassing, bodies being hidden, laptops being hacked or even when a taxi driver is distracted in Mumbai
  • Do all of the above through a user-friendly interface, on any playable non-sniper map

Notes

  • Missions created only work offline - just like all other missions.
  • Supports all maps.
  • rpkg file is created automatically if you like - you don’t need ZHM5PatchBuilder.

Credits

  • IOI for making Hitman 2
  • @KevinRudd for discovering so much about mission scripting
  • Icon by u/JesusNoGa
  • pawREP for ZHM5PatchBuilder
  • @musicalmushr00m for helping with ideas and beta testing

Support
If you have a problem, you can post it in this thread or send me a private message. I’m usually quick to reply (well, when I’m not sleeping).

Download
Repository Search
All Missions Offline (required for unused slots)
QuickEdit Wiki

26 Likes

Oh wow, I’m surprised it’s 109mb, was expecting a much smaller thing. Gonna give it a look now

(It seems AVG does not like it)

And if anyone actually makes something, make sure to post it in the Modded Missions Thread!

1 Like

There’s a reason for that - the actual program is about 3 mb, but to actually run it a lot of less useful stuff is needed (Electron).

AVG not liking it is because of Electron, too - it effectively runs a special version of Chrome, which for some reason triggers antiviruses. The actual program is written like a webpage - it can’t hurt your computer. You might need to add an exception.

1 Like

Already looking great! I love the versatility this offers.

However, I do have one question:

Where is the RPKG file stored? Upon clicking “Save Mod” I don’t get a prompt to save a rpkg file or title it. Is it automatically created and stored somewhere that I’m not sure of?

Thanks so much.

1 Like

Have you saved a Mission Configuration?

1 Like

Alright I think I’ve seen the extent of what it can currently do, based on the dropdown lists; is it accurate to say you can’t add any failure objectives (aka complications)?

So no required exit, no No Pacifications etc?

It seems like you’re halfway there, you can pick pacification and make it a Success event, but not a Failure event.

1 Like

Yep - that’s my next feature to add.

1 Like

Am I doing something wrong?

I’m sorry if I’m just completely blind or missing something obvious here.

1 Like

Even when adding an objective I don’t see any saved configuration, nor am I able to save the mod.

I can save the script and the GFXI file, and find it in “mod” but I don’t see a rpkg file.

1 Like

That’s odd. Can you try this:

  • Open Command Prompt
  • Type “cd <the full path to where QuickEdit.exe is, e.g. “C:\Users\Person\Documents\QuickEditFolder”>” and press Enter
  • Type “ZHM5PatchBuilder.exe ./mod ./mod.rpkg” and press Enter

Does a file called mod.rpkg appear in the directory?

“The system cannot find the path specified.”

Turns out I forgot to include the patch builder, despite that being the whole point. Wait a minute, then download it.

EDIT: You can download now. In future, updates will prompt you at the top of the app.

1 Like

I finished the failure conditions feature - if you redownload through the link, you’ll get the latest version. In future, updates will prompt you at the top of the app.

1 Like

BTW I love you put what other mods use that slot :’)

EDIT: @Atampy26 Also, was this based solely on the Command list I provided? Cos I expanded that list without adding it to the Modding thread:

CameraXX_HMRecorded (Act of being recorded by CCTV), TaxiDriverDistracted (Mumbai), ExitDisabled, SomeoneServed (As a food vendor, MAY be specific to Haven Island), CaughtEnteringCloset, NPC_Distracted (setpiece distraction, eg generators and power boxes NOT coins and items)

1 Like

Thanks! I thought it would help people decide.

1 Like

Yes, the event list was basically just your list and a few others I saw in mission scripts. Thanks for the new options! Just one question, though: does CameraXX mean a code like Camera02 or literally CameraXX?

Also, with your original list:

  • Which events allow IDs? I know it’s a lot of work to test these, but some look like they could use IDs (like ItemThrown or Actorsick).
  • A lot of events are duplicated (DisguiseChange vs Disguise, GameTension_Combat vs HM_InCombat).
  • GameTension_HighAlert didn’t work when I used it.

Yeah, there are tonnes of nearly identical commands, I haven’t tested them all, just seen them in the game. HOWEVER there is a difference between them. Disguise is whatever disguise you’re wearing right now (Can apply from the very start of the mission), you can put in the data of NOT being allowed to wear one specific disguise, where as Disguise_Change means you if you change to anything else at all

I don’t know how complex you’re making your thing, but I’ve come up with at least one which could give you some dropdown options

SecuritySystemRecorder ("$Value.event", “erased”/“spotted”/“CameraDestroyed”/“destroyed”)
So if you put in SecuritySystem Recorder you can have a drop down of choices of manually erasing the tapes (Pressing G or using EMP), being spotted by a camera, destroying an individual camera, or destroying the security box (Gun or bomb)

The command said CameraXX, I didn’t save all the raw info to see if it required a specific camera in Data to work.

I don’t have a list, there was so much information for me to manually save in a file to see what mentions Target/Item IDs, but I might in the future. I’m pretty sure actorsick is one though, yes. Same with distractions and Guard’s finding items, you put in the ID of the NPC affected by those things (Not the ID of the Item being found or being used to distract)

You could probably also add “Talk to an NPC” using setpieces (name_metricvalue=47_Dialog_Activated) [Haven’t tested yet]
setpieces is probably the most impressive of the commands, but it requires you to know specifically what data to put in to work, and almost all of them are specific to missions rather than widely applicable.

Dang; yeah I’ve only tested a handful of these ones. Like Surveillance_EvidenceDeleted only applied to pressing G on the machine (or EMP), not shooting the box, so if that’s what you’ve got in the scripter currently then people may be surprised to realise that shooting the box didn’t complete the objective

Your next update should probably be to put in hidden objectives and secondary objectives (Not required to complete mission). That way you can have a hidden optional objective that says “Get recorded by CCTV” that when it happens trips an actual objective of “Delete the evidence”; as opposed to starting the mission with “Delete the evidence” even though you haven’t been recorded.

Ohhhhhhhhhhhh
yesssssssssssss

I see myself wasting spending many hours with this.

Thank you very much.

3 Likes

Also for the objective icons on HUD I’ve collated a list of what number is what

22-19 (Skull on Yellow - Patient Zero), 18 (Exit), 17 (Objective), 14-16 (Complete), 13 (Clue), 12 (Data Core?), 11 (Triangle Objective), 10 (Question Mark on Blue), 9 (White Grid of 9 holes - “Mission Story Updated”), 8 (Exclamation Mark on Yellow), 7 “i” (Information), 6 (Timer on yellow), 5 (Timer on Yellow), 4 (Timer on Yellow), 3 (Timer on Yellow), 2 (Grey Box), 1 (Briefcase)

So I noticed you’re using either icon 12 or 13 based on mushroom’s screenshot above, but the normal icon for objectives (Bullseye symbol on a blue background) is 17

1 Like

Thanks for both of those replies! I’ve been implementing them for the next update. One thing, though - what does ‘scope’ do in a statemachine? I’ve seen it as either ‘session’ or ‘hit’, and sometimes it’s inside the ‘Definition’ key, sometimes it’s outside.