Page 6 of 8

Re: If I would remake Heroscribe

PostPosted: April 13th, 2019, 2:29 am
by Anderas
I learned a LOT in the last few weeks. GUI programming is so entirely different from what I do normally! :shock:
I was getting up each day at half past four so that I would have some time before I go to work.

I made a window where you can load a PNG file, play around with some of it's properties and then make an SVG from it.
It's not wonder woman: If your png doesn't come with a good size, it won't work, no matter what you do with the sliders.
I tried for example with the black shield from the forum, this one: :blackshield: just to see what it can extract, but no... not enough detail. :D

On the other hand, if your png is borderline, those sliders migh help you with the last two details. If you need more options, you better consult your paint.net :-)

It employs Martin Weber's Autotrace to generate the SVG.
That means, I will have to distribute his software with mine (and get his agreement for doing so)
or I will have to go the way of the old heroscribe and ask the user to download his tool from the net. We'll see.
Image

After, the symbols are likely not in the right size. So I made an interactive resizing tool for this step, showing a grid like you'd find it in heroscribe.
It's crazy how much code is needed for such a small function!
Image

Now I have to find out how to tie those dialog boxes together... :-)

Re: If I would remake Heroscribe

PostPosted: April 13th, 2019, 9:04 am
by j_dean80
Looking awesome. Wish I could do just half of what you do on the computer.

Re: If I would remake Heroscribe

PostPosted: April 14th, 2019, 12:30 am
by Anderas
Thanks!
I am doing this for the first time. :)

Re: If I would remake Heroscribe

PostPosted: April 16th, 2019, 7:35 am
by Anderas
Hello everyone

If you're interested, could you please comment on these slides? It is a little bit technical, it is about the data structure we want to use.

So if you have a slightly technical background I would appreciate any comment.

https://docs.google.com/presentation/d/ ... p=drivesdk

Thanks

Re: If I would remake Heroscribe

PostPosted: April 16th, 2019, 7:57 am
by Count Mohawk
Maybe it's too early in the morning for me to judge, but I don't see any problems with the way you laid out the data structure. I'll try another look later tonight after work (if I remember).

As far as your concern regarding "named" monsters such as Grak who use pre-existing icons, I wonder if you could somehow combine the icon with another feature that adds the name (or a 5-character abbreviation) to the map directly, the way such names appear in the official Quest Books? That would probably suffice to distinguish e.g. regular Orcs from the Grak!Orc.

Re: If I would remake Heroscribe

PostPosted: April 16th, 2019, 2:15 pm
by Anderas
Yes thanks a lot!

Before, the icon editing was an optional thing. I think it just made it one step up the ladder.

I thought about adding mini icons to icons. Adding a written word is also a good idea. Or changing the color. It might become mandatory for self invented stuff to look different from the standard stuff: problem solved.

Re: If I would remake Heroscribe

PostPosted: April 22nd, 2019, 4:20 am
by pemcode
Rather than remake HeroScribe, would you be interested to extend the functionality of HeroScribe?

In particular, HeroScribe (the Java program and its corresponding HeroScribe XML files) are missing quest text.

I want to add quest text to my HeroScribe fork (and the corresponding XML files) so that I can use it in my UE4 HeroQuest simulator game (Unreal Engine 4)

q1-text.png

Re: If I would remake Heroscribe

PostPosted: April 22nd, 2019, 4:38 am
by Anderas
Yes I was thinking about extending the existing one, but my java is too bad. Python, I know it. Plus, I have modules like png to svc, card maker, questimator already done and want to keep them. So for me that was the reason for a rewrite.

Could you give me a link to your heroscribe fork? I was searching for an existing project, admittedly less than an hour, but didn't find one.

Who are you by the way? One of the chierichetti brothers?

Re: If I would remake Heroscribe

PostPosted: April 22nd, 2019, 1:37 pm
by StratosVX
pemcode wrote:Rather than remake HeroScribe, would you be interested to extend the functionality of HeroScribe?

In addition to what Anderas said, when I had first looked at trying to add features to Heroscribe several years ago, I found that the packages they were using for the GUI were outdated and not supported much anymore. So just to extend the functionality, much of the code would have to be rewritten anyway. I'm not overly familiar with Java myself, and one of the things that's kept me from starting this project in the past was having to learn Java with everything else I have going on. When Anderas mentioned moving it over to Python, I felt the urge to work on this again. This is my finals week for the semester, so hopefully here within a few days Anderas will be getting more help from me. I have the main GUI class mapped out based on the old version, so when I get time to sit down and work on it, I will hopefully be able to knock that class out fairly quickly.

Re: If I would remake Heroscribe

PostPosted: April 23rd, 2019, 2:06 am
by pemcode
HeroScribe uses javax.swing. I edited HeroScribe code with NetBeans IDE 8.2, running on latest Java. I don't think anything is wrong with Swing, and I seriously doubt that Java has any plans to kill support for Swing.

I'm using HeroScribe's XML files for my UE4 HeroQuest game (simulator). My fork just has some small tweaks to the GUI to make the interface faster.

The bigger issue is that HeroQuest XML files are missing the quest text, and the HeroQuest GUI does not support quest text. So I want to extend HeroScribe such that it supports quest text (in the GUI and XML). And maybe Python for game logic.

To clarify, I mean that HeroScribe fork will still be written in Java, but it will allow users to save quest text (in the HeroScribe XML that's also displayed in the HeroScribe GUI) that includes both the actual text and a corresponding Python script. The Python script will be used by my UE4 (Unreal Engine 4) code to execute game logic. However, for simplicity, I may start with simple function calls in the XML, something like:

Code: Select all
<object id="LetterD" left="12.0" top="6.0" rotation="downward" zorder="0.0" />
  <text>The first Hero who searches for treasure will find 84 gold coins in this treasure chest</text>
  \script function="Treasure" arguments="gold, 84" /> forum doesn't let me do < for the word script
</object>


The other reason why this may be better than actual Python is that embedding Python in UE4 requires effort. In fact, for whatever reason, this project https://github.com/20tab/UnrealEnginePython only supports "Windows, MacOSX, Linux and Android"... So custom function calls may be better if it's non-trivial to support Python on all platforms.

To me it seems easier to extend the Java version than rewrite it in Python... But maybe not.

by the way are you planning to use the existing HeroScribe XML format for your Python rewrite?