NPC Engineer
A windows program designed to facilitate the process of getting NPCs into Fantasy Grounds.
This has been merged with The Engineer Suite; thread here.
Maasq
Printable View
NPC Engineer
A windows program designed to facilitate the process of getting NPCs into Fantasy Grounds.
This has been merged with The Engineer Suite; thread here.
Maasq
Full changelog on the website.
If you find something that breaks NPC Engineer, please PM me a text file of the offending document so that I can track down the issue.
Feature requests are also welcome.
MaasqQuote:
IMPORTANT: If you are using NPC Engineer to import from a Homebrew source, the source will not have been subject to the same rigorous shredding official monsters get. This means that errors in formatting, capitalisation, spelling and so on can make it difficult for NPC Engineer. If your import doesn't work, check it carefully for missing full stops, colons where full stops should be, and the like.
Thank you so much
Great work, I not sure I'm doing a completely right though, I'm not getting a mod file in module folder but I am getting a zip file in the folder I have npc engineer installed in . I changed the extension of the zip file and placed it in module folder and it works so I'm pleased
Hey Hawkwind. I'm glad you like it!
I'll go through some options here, and I'll try to explain each as fully as possible. Please don't be offended if you already know all of this; someone else might stumble across this thread with the same issues in the future.
I can't reproduce the error here, so the first thing we need to check is Windows version. I am using 10 (with the Creator update), and it also worked before the Creator update. Previous versions of Windows may react differently to some of the program's calls to Windows internals; I don't know for sure.
The next thing to check is that you are setting your directories correctly in the 'Project' window:
Attachment 21103
About halfway down the left hand side, there are two fields for paths.
- The module path is where you want to store the datafiles for the module on your system. Use the folder button to the right of this to open up a folder select box to make this easier.
- The Fantasy Grounds module path is where your finalised module should end up. NPC Engineer looks in the registry for this, but I can only swear to it working properly on Windows 10 as this is the only OS I have to test it on. It should take the form shown in the screenshot, with 'Steph' replaced by your own Windows profile name. If this box is blank for any reason, or the path looks wrong, you can use the folder icon to the right and navigate to it yourself. A 3rd way of finding it is to run FG, and click on the little folder icon at top right (just below the 'close' button). This will take you to your FG datafile path.
Now I think about it, it is almost certainly the FG path that is the issue here. NPC Engineer does the extension change and file move in one instruction, so if the destination path doesn't exist the whole instruction will fail, leaving the zip file in the module folder. If yours is in the NPC Engineer folder, it suggests you haven't got either path set.
Let me know if this helps you out!
Maasq
thanks for the quick reply
I have solved the issue now, i use a non standard location for my FG data and I somehow missed or deleted "/" in the file path name
Excellent - glad it was something simple. I'll build in some error checking at some point!
Maasq
Minor bugfix update.
Maasq
quick question if i have clicked the parse button do I still need to click the add to project button as it appears from the arsing screen the Npc is being added to a database file
I'm not sure I understand the question, so I'll give it my best shot. Shout me (here or Discord) if I have got the question wrong!
The 'Parse' module loads up the npcs.json file and uses this to parse to a module. If the NPC hasn't been added to it (using 'add to project') there should be no way it can be parsed. There's a change in data structure that only happens when the 'add to project' button is pressed, so there's no chance of an accidental blurring of data or of a bug adding it.
However - and this might be what is happening - whenever you add an NPC using 'add to project', it is permanently a part of that project. You are right; it is held in the database file (npcs.json). So if you add the NPC on Tuesday, but don't parse until Friday, that NPC will still be part of the parse. This is to allow people to work on a big project 'bit-by-bit'.
Does this answer your query?
Maasq
I have been pressing parsing button before pressing the Add to Project " Button
Hey Hawkwind.
I just tested in case I'd done something by accident, and thankfully not. There is no way for a creature to be parsed until it has been added to a project. The converse is that if a creature is parsing, then you have added it to the project some time in the past.
When I add a creature, my order of button pushes is: Save NPC, Add to Project, Parse. I don't need to save the NPC first, but I like to have them around for testing purposes.
Maasq
ok for my next question......
I have parsed all the monsters in a pdf and created a mod file. I have then created a new campaign within 5e entered all the story and maps etc from the pdf and linked in all monsters/npc's and then pleased with my work exported it all as a new mod file. I open the mod file on another PC with FG installed on and the npc's are not there so my question is there away of merging the two mod files without do a lot of cut and pasting between the two db.xml files , you use to until quite recently, be able to open the monster mod in FG , drag the npc to the npc page and it would be stored in the resulting exported mod.
Could you parse from NPC engineer into a already existing mod?
Hi hawkwind - from your description you didnt do what you used to do - eg you didnt drag the npcs into the npc tab and then use those for your encounters etc.
yep I worked that out later and ammended my post but forgot to press save apparently
I am still very interested in inviting you and your current project to FGC to show this off.
Hey folks
Hawkwind - I plan to build in that very functionality at some point, but I am working on a different addition at the moment. I am a little wary of it though, as it could easily render a module unreadable. It may be that there are too many variables to safely offer that as an option.
Laerun - still happy to take part :)
I'm currently working on a better edit box for the 'description' tab. this will negate the need for a pop-up window, so make it faster and more intuitive. More importantly, it will allow you to apply headings, bold, italic, etc and see how it looks. This is a monster piece of work in the language I use, so it'll take me a couple of weeks of tinkering with XML/RTF/plain text to make it work. Fingers crossed though - if I get it right it means my next module will be something reference manual related.
Maasq
Sounds great, looking forward to hearing from you again. I was looking into having lunch party and demo you on in the third week of November...?
double post...
Ok, I just downloaded this because it sounds amazing! But when I try to run it, I get this error.
Attachment 21227
I have re-downloaded and re-extracted. Same thing.
Hiya!
I'm hoping this is easily fixed. By the looks of things you have a dll file missing - I don't know whether this is because it got deleted, or was never installed. It is a Visual C++ dll, which at first struck me as odd as I don't work with C++, but then it struck me - the language I work in is written in C++.
A quick check on the web suggests this is a common thing though, fixed by reinstalling the Visual C runtimes. https://support.microsoft.com/kb/2019667 and choose the version that suits you.
This post has other options too.
Hopefully this will help (and you'll probably need to restart Windows too!) Let me know how you get on.
Maasq
Ok, I was able to get it to open. Thank you. Now to try and get the NPC's created.
Ok, WOW. Just messed around with it a bit and THIS... IS.... AMAZING. Even I could figure it out and use it quick and easily. I have a ton of NPC's to put in, but seriously, this is great work. If you plan on making this where everything can be par5ed this way. You will make my life super easy with FG. It will be so much easier to create a full self contained module. At least to me. I know a lot of others are able to do a lot of this other ways with ease, but this is perfect for me.
Thank you, thank you and thank you.
You can stay :)
Thank you so much for the positive feedback; it makes it all worthwhile. I'm busy trying to get a rich text module working and it is bursting my head; coming here and seeing this response to NPC Engineer means I'll go back to the Rich Text with renewed vigour.
As to the long term future of this...
My first goal is to make sure that NPC Engineer is complete. There are 2 big things to enable - a proper text editor for the 'description' tab (hence the Rich Text pain!) and a more graphical right-hand panel - something that will mimic in a rough sense a statblock in the MM.
After that, I'll be turning my attention to other modules - races, classes, and so on. I can't promise anything, obviously, but I will try to implement as much as my shaky skills allow.
Cheers!
Maasq
Hello Maasq, so I have been trying this out and it works fairly well!
Hi Maasq,
I read the above post that PTBBC.ORG was getting errors of missing DLL files running NPC Engineer. You mentioned your using C++ , If your using Visual C++ then set your project settings to "Use MFC in a static library" and it will include all the DLL needed for that executable. But I re read and you said your language isn't C++ but uses it .. so IDK..
Hiya
I programmed NPC Engineer in AutoHotKey, a surprisingly full-featured wee language that fitted my needs perfectly. I recently found out that it was written in C++, but I have no idea about anything beyond that statement. I didn't know AHK had dependencies (the dll) until now!
Maasq
I can't wait for more (functionality)! This is AWESOME!
Thank you Rob!
The improved text entry should go live soon, maybe even tonight. It'll make a big difference to entering the descriptive stuff. :)
Maasq
Test it thoroughly :) I am lazy when it comes to testing my work. It is probably arrogance, to be honest! So yeah, as many people testing it for as wide a range of NPCs will show up any faults in it.
I'm also open to suggestions if you feel anything is missing.
What do you think my next module should be? I want something simple, so maybe equipment - I want to make sure everything integrates as easily as I envisage. After that, I can start hitting some of the harder areas such as races, classes, etc.
Anyway, you're one of the 'well known' ones on this forum, so you endorsing it will hopefully drive a few more folk to try it. That's help right there.
Maasq
I am HOPING what you are working toward is something that will do EVERYTHING. Is that even possible? Paste the whole PDF in and it just sorts it out? I think that's probably not possible. But next, you should do whichever one you think is easiest. The one that won't burn you out. lol
I'd say 'not possible' because there are so many different styles and formats to copy from, and that's before the mechanical difficulties of recognising room description/weapon/NPC/boss/whatever. Basically you'd need a full-blown AI :)
My skill level works at the compartmentalised level, so you'll have modules (eventually) for each of the major parsing areas. Within each of those I'll be implementing a paste-import method if it seems worthwhile.
Burn-out is always an issue; especially when a task is difficult due to all the different inputs possible and the language I am using has limitations. The support on here and on Discord has been fantastic, though, and the guys on the AHK forum are similarly very giving of their time and expertise, so it gets me back on track.
The worst thing is finding the whole program is grinding to a halt because you mistyped a period as a comma - and you discover this whilst asking for help in a programmer's forum..... My kids found it very funny when I stopped cringing and told them, so not totally a waste!
Maasq
discovered a little glitch
I have been making a module with loads of racial templates on to NPC's and i have noticed If for example i open my bard.Npc file , add some Elf traits ,save it ,add to project and Parse then open say a veteran.npc file the bards's spells haven't been cleared
The same thing happens with traits
a way to quickly add templates would be appreciated by myself
Hiya
You're right; it is indeed a glitch. I'll fix it in the next release which I hope is coming soon. Until then, a workaround is to click 'New NPC' before 'Open NPC'; this will clear all data fields. Sorry about that, and I hope it never caused you too much pain :(
Someone else requested templates, and the main reason I haven't done it is I am not sure how to. I am open to suggestions!
Maasq
Hi Maasq
I've downloaded it today but I'm having a small problem and I'm not sure where I went wrong
After Parsing, I tried opening the module on FG but it gives me an error 237 reading end tag
As for the templates, you can simply use the SRD Monsters/NPCs as templates perhaps?
That sounds like an XML issue but I can't reproduce that with my test batch of NPCs. Can you email me your npcs.json and the mod file please, so I can see what is happening? [email protected], or hunt me down in Discord.
Possibly, though I want to avoid having content in NPC Engineer. Maybe I'll have a 'save as template' option and work with that somehow. Cheers for the suggestion!
Maasq
My understanding is you could include the SRD, or parts of it, as long as you include the OGL as well.
But, you might instead of including the SRD, just in your doco a link to the SRD and an example or instructions on how to use it. Then you wouldn't have to worry about any of that.