Stunts Forum

Stunts - the Game => Stunts Related Programs => Topic started by: Cas on March 08, 2015, 01:16:12 AM

Title: Bliss / Cas-Stunts track editor
Post by: Cas on March 08, 2015, 01:16:12 AM
Hi, folks!  I had been off for a long time and recently visited the forum, found it still very active, so I decided if I wanted to come back, better not do it empty-handed!  Then, I started to work on a new track editor and here I'm bringing you the first beta version. I hope you like it. I'm still working on it, so please do tell me of any bug or general suggestion.

EDIT:
Current latest version: Bliss 2.5.3
Download from site: http://dimioca.com/bliss (http://dimioca.com/bliss)
ZIP file with latest version attached here as well. Supports GNU/Linux 32bit and 64bit, Windows, FreeDOS and DOSBox
Title: Re: Introducing my new track editor
Post by: Duplode on March 08, 2015, 06:41:34 PM
Nice! The editor has some interesting features already. Before getting into them, a note on running the program for other folks willing to try it: the Windows executable is 64-bit, while the Linux one is 32-bit (I had to install the 32-bit libxpm to run it here). Also, the DOS executable needs an extender called CWSDPMI, which you can download from here (http://homer.rice.edu/~sandmann/cwsdpmi/) (pick the first "binary distribution" link, then extract CWSDPMI.EXE into the program directory).
Title: Re: Introducing my new track editor
Post by: Cas on March 08, 2015, 08:34:08 PM
   Thank you, Duplode!  You've done a lot of testing. You found some undocumented keys and bugs I hadn't noticed!
I compiled the Windows version for 64bit (I actually had my brother do it for me, since I use Linux), but I could compile it 32bit if necessary. The Linux version is 32bit because I'm currently using a 32bit Linux, but would like to upgrade and probably next versions will be 64bit.
    What Linux distro are you using?  Were you able to run the binaries without any dependencies expect for the 32bit lib? I'm interested in knowing more about this. The error about file name duplication, I had not noticed, because I did most of my tests under GNU/Linux, but now that I read it, I know exactly why it happens. I will have it fixed and upload the update. It's not hard to resolve. The editor can actually combine track elements already, but I compiled it without that option, because I hadn't added the switch yet and I preferred the default to be more like the original editor. Next version will include at least a key shortcut to switch editing mode. There is also an option for not showing the terrain warnings. It can be used for checking what's "under the yellow box". I'll also include that in the next upload.
    About the high CPU usage, I've noticed that in some of my programs and I really don't know why that happens. I think I need to include more idling time in it. I can see DOSBox takes some time to load the DOS version. I believe it is because I load the Targa graphics byte by byte, as the screen format is different from that of the graphics. I could make this work faster by changing the file format, but the file would be 25% larger and the loading time would only vary significantly under DOSBox. I'll consider it :)
Title: Re: Introducing my new track editor
Post by: CTG on March 08, 2015, 08:52:25 PM
well-done
Title: Re: Introducing my new track editor
Post by: Cas on March 08, 2015, 09:13:02 PM
Thank you, CTG! :D  I'm fixing the bugs and I'll try to publish the next beta tonight!
Title: Re: Introducing my new track editor
Post by: Cas on March 09, 2015, 02:44:51 AM
Updated!  ;)
Some errors fixed, like file names no longer duplicate. Also, you're able to toggle terrain-track conflict generation and display. I tried changing the yellow box to something more transparent so the actual terrain element could be seen in spite of the warning, but it was very difficult to notice that the warning was there. By toggling warning display off and back on, now, you can easily check what's underneath the yellow box, though.

EDIT: Also downloadable here: https://mega.co.nz/#!jcBgEKQC!pF_4AdoJdoWwfbgxsk6wKMfBaqJnfnePuSM2d85KMLE (https://mega.co.nz/#!jcBgEKQC!pF_4AdoJdoWwfbgxsk6wKMfBaqJnfnePuSM2d85KMLE)
Title: Re: Introducing my new track editor
Post by: Duplode on March 09, 2015, 04:38:56 AM
Updated!  ;)

Wow, that was quick!  :) The CTRL+D toggle solves the terrain conflict, and the debug mode helps a lot when playing with filler tiles. As for the CTRL+E combining mode, it works well for simple superpositions; however, since a left click will always insert all four tiles of an element, some complex combinations can't be done. For instance, among the relevant examples in this Wiki page (http://wiki.stunts.hu/index.php?title=Illusion_track#Examples) I can do the broken cork l/r, but not the bridge chicane, which is an L-shaped mosaic of two corks u/d:

79  FF
7B  FD
FE  FD

(As for the symmetrical splits shown there, some orientations can be done, but not all of them. A south-to-north split with the fake path east of the real track runs into the same problem of needing an L pattern.)

    What Linux distro are you using?  Were you able to run the binaries without any dependencies expect for the 32bit lib? I'm interested in knowing more about this.

Arch Linux 64-bit; and yes, I only needed to install lib32-libxpm for it to work.
Title: Re: Introducing my new track editor
Post by: Cas on March 09, 2015, 04:07:39 PM
Ah!  I see what you mean!  Some combinations don't go from left to right and top down entirely. I think the best way for me to solve this is to include a way to manually enter the complements FD/FE/FF. They are always the same, regardless of the track element, so there is no need to actually copy each track element piece by piece, but only the main element and then modify it by changing the complements. It's a lot faster. Cas-Stunts will realise. For example, in your example, the red FD corresponds to the 79h and not to the 7Bh. Cas-Stunts is already able to tell that and will draw the corresponding section of the 79h 4x4 element. Only you can't enter it. I'll device a way to do it.

It's great that you can run the binary without problems. It means that if I later on install a 64bit distro, I will be able to compile 64bit and most people will run the program without dependencies. I really hate dependencies: they complicate program installation and if automated, they make the installation internet-dependent, so you can't just save a copy of the program in a CD/DVD/Flash drive and copy it to your computer whenever you want. Besides, dependencies bring license conflicts sometimes. I like to use only what is guaranteed to find on every system.
Title: Re: Introducing my new track editor
Post by: Duplode on March 09, 2015, 04:58:58 PM
I think the best way for me to solve this is to include a way to manually enter the complements FD/FE/FF. They are always the same, regardless of the track element, so there is no need to actually copy each track element piece by piece, but only the main element and then modify it by changing the complements. It's a lot faster.

Looks like a good solution. By the way, as you say things like bridge chicanes are already loaded correctly when in a pre-existing track, the only difficulty is in recreating them.

I really hate dependencies: they complicate program installation and if automated, they make the installation internet-dependent, so you can't just save a copy of the program in a CD/DVD/Flash drive and copy it to your computer whenever you want. Besides, dependencies bring license conflicts sometimes. I like to use only what is guaranteed to find on every system.

Agree 100%. Packaging Cairo and associated libraries with the Windows build of stunts-cartography was quite unpleasant. (And now it seems changes in libraries which depend on Cairo mean I will have to change the included DLLs when/if I release a new version  ::))
Title: Re: Introducing my new track editor
Post by: Vector on March 09, 2015, 07:50:27 PM
Can i be a beta tester? PLZ!
Title: Re: Introducing my new track editor
Post by: Cas on March 10, 2015, 05:23:40 AM
Sure!  Everybody can download it and try it :)
I've been making some additional changes to it, but it's still not ready for another update. If anybody can give me a hint, for example, of how I could reduce the CPU usage, I'd appreciate it. I'm not really doing anything unusual. It's just a normal main loop.
Title: Re: Introducing my new track editor
Post by: Shoegazing Leo on March 10, 2015, 05:00:58 PM
An advantage what I see: I can edit tracks without the DOS Box. The system remembers the classic TB.
Title: Re: Introducing my new track editor
Post by: zaqrack on March 10, 2015, 06:35:13 PM
I am very excited to try out this new tool.
Title: Re: Introducing my new track editor
Post by: Cas on March 12, 2015, 05:57:32 PM
Well... first, I have to say that I'm very happy that the forum is back :)  I've been trying every few hours to see if it was working and today I had the good surprise!

You can all download the editor and try it freely, of course!
I've now added a couple of features to make it easy to create hybrid track elements. I need to add some touches before I upload this, though. I also want to make track editing even more comfortable and I have some ideas.  ;D
Title: Re: Introducing my new track editor
Post by: Cas on March 15, 2015, 08:49:48 AM
I've fixed some bugs and added a couple of features, mostly concentrated in "illusion track" editing. Some additional features I'm working on are not ready to be published, so they are disabled in this distribution.
I still have to ask my brother to compile the source for Windows, so this zip does not contain the Windows executable. I'll upload it soon. Till then, you can test it with the DOS executable. Please tell me what you think about the new changes. Thank you, guys!
Title: Re: Introducing my new track editor
Post by: Duplode on March 16, 2015, 03:34:11 AM
Just had a quick look at the new features. The arrows in debug mode are a very intuitive way to display fillers. Overall the workflow for creating illusion combos is quite efficient - position the main tiles first, then use X/Y/Z to fix any wrong fillers, using the debug mode if you get confused. A minor addition that occurred to me would be an indicator of whether the CTRL+E combining mode is activated.

If anybody can give me a hint, for example, of how I could reduce the CPU usage, I'd appreciate it. I'm not really doing anything unusual. It's just a normal main loop.

I have no FreeBasic experience, but as you implied earlier on it does feel like a main loop looping too fast, with more idling time needed. I wonder if you have margin to increase it without affecting GUI responsiveness.
Title: Re: Introducing my new track editor
Post by: Cas on March 21, 2015, 04:20:30 AM
And.... upgrade!
It took me a few days this time and it may seem that I didn't do much, but I'm trying to get the editor out of the beta status, which soon will happen, so I'm concentrating on bug correction and optimisation.
Among other things, I added an indicator for manual editing, as you suggested, Duplode. What took me most of the time was the directory listing system, which has been highly improved. There could still be bugs there, I'd appreciate if you guys tested the program and used it intensively.
I need confirmation from users of both Windows and Linux distros other than Ubuntu that the shortcuts SHIFT+F1 and SHIFT+F2 work on your computer and whether the alternatives F11 and F12 also work. In Ubuntu, F11 and F12 are currently not working. I can fix that, but I would like to first know if this is an Ubuntu problem only.
Also, please take a look at the new graphics. Currently, many elements are still just like the original Stunts graphics, but many others have been enhanced to look better.

Please spread the word. I'm sure Cas-Stunts is already at a level as to replace all other editors available. If any of you still prefer to use another editor for any particular reason, please let me know, so I can continue to better the program and make it the number one choice for every stunter. Thank you!
Title: Re: Introducing my new track editor
Post by: Duplode on March 21, 2015, 05:48:54 AM
Among other things, I added an indicator for manual editing, as you suggested, Duplode.

Thanks!

What took me most of the time was the directory listing system, which has been highly improved.

Directory browsing is indeed an important improvement. Speaking of that, two nice things to have (for people like me with messy directories with loads of tracks  :)) there would be PageUp/PageDown support and moving through (or filtering) the track list as you type the file name.

I need confirmation from users of both Windows and Linux distros other than Ubuntu that the shortcuts SHIFT+F1 and SHIFT+F2 work on your computer and whether the alternatives F11 and F12 also work. In Ubuntu, F11 and F12 are currently not working.

Same thing here in Arch - SHIFT+F1 and SHIFT+F2 work, F11 and F12 don't.

If any of you still prefer to use another editor for any particular reason, please let me know, so I can continue to better the program and make it the number one choice for every stunter.

At this point, I believe the main Track Blaster feature to be added would be the selection-and-clipboard commands (cut-copy-paste, mirror and fill). That might be a good opportunity - those commands are very unintuitive in TB, and they would probably feel a lot more natural in a more mouse-driven interface.
Title: Re: Introducing my new track editor
Post by: Cas on March 22, 2015, 07:52:31 AM
That's good!  Thank you!

PgUp and PgDn are easy to implement. I could also do filtering, but I have a practical problem there: suppose you enter a text. As you type, the list should be changed. Now, if you typed a complete file name, only that file should be shown below. Well, you currently can click on files in the file list and the name will populate in the entry box and you can continue to scroll and click on other file names, but if I do the automated filtering, this will no longer be possible, since clicking on one file name will take that to the entry box, thus filtering and leaving only that file in the list. I have to find an alternative, another idea, so that I can do the filtering without that interfering with the current working of the list.

I'll probably also enable F11 and F12 for GNU/Linux, even though they're not necessary, since SHIFT+F1 and SHIFT+F2 work well and you also have "T".

A clipboard would be a major addition to the editor, but I agree that it's a very important one. In order to get that done, I realised I had to change the way graphics are being handled. Because I saw this was probably going to also solve the problem with the slow start-up in DOS, I've already made that graphic system change. The loading speed in DOS has only increased a little, which makes me think the actual problem has to do with DPMI initialisation when I try to allocate memory for the first time, but I'm not sure. Anyway, the change now allows for a "third layer", which I will use for the clipboard selection system. It will also make it possible to improve the graphic quality. This is going to take some time.

I think the first thing I will do is get rid of the bugs and get the first non-beta release. Then, I will be able to continue with the new features.
Title: Re: Introducing my new track editor
Post by: Duplode on March 22, 2015, 05:54:56 PM
PgUp and PgDn are easy to implement. I could also do filtering, but I have a practical problem there: suppose you enter a text. As you type, the list should be changed. Now, if you typed a complete file name, only that file should be shown below. Well, you currently can click on files in the file list and the name will populate in the entry box and you can continue to scroll and click on other file names, but if I do the automated filtering, this will no longer be possible, since clicking on one file name will take that to the entry box, thus filtering and leaving only that file in the list. I have to find an alternative, another idea, so that I can do the filtering without that interfering with the current working of the list.

An alternative would be just moving through the list as you type, selecting the closest match to the prefix you typed. It would work just as well (and arguably even better, as you can keep moving freely through the list).

I think the first thing I will do is get rid of the bugs and get the first non-beta release. Then, I will be able to continue with the new features.

A sensible plan.
Title: Re: Introducing my new track editor
Post by: Cas on March 26, 2015, 04:44:08 AM
I just updated to a 64bit GNU/LInux, so next update will have a 64bit ELF executable file :)
I didn't feel ready to try Arch Linux yet, though. But it looks like I'll eventually get to that. It's the kind of OS I'd like to try :P
Title: Re: Introducing my new track editor
Post by: Duplode on March 26, 2015, 05:15:02 AM
I didn't feel ready to try Arch Linux yet, though. But it looks like I'll eventually get to that. It's the kind of OS I'd like to try :P

I switched to Arch in early 2013, after nearly five years using Fedora in my home desktop. The accumulation of small annoyances over those years made me get over the inertia (the most immediate cause was that I had gotten sick of Fedora's crazy distro release upgrades). The initial effort with Arch was significant, but it has paid itself many times since. Transparency rules!
Title: Re: Introducing my new track editor
Post by: zaqrack on March 26, 2015, 03:27:18 PM
I used Arch for several years in the late 00s. I switched from Gentoo - that was overkill. I liked Arch, but have not used Linux on a daily basis since 2010 or so. :(
Title: Re: Introducing my new track editor
Post by: Cas on March 26, 2015, 06:31:55 PM
Oh, well, I had DOS only in my computer until internet became very important. Then I figured how to make partitions and I installed Windows 95 (then 98) alongside DOS. At that time, I used DOS for everything except to get to the Internet. Later, many programs, like CD burners and MP3 encoders, came for Windows almost exclusively, so I started to use Windows more, but I didn't like it. In about 2006, I first tried a Linux, a very old Ubuntu, on my computer, but I was just testing it and continued to use DOS and Windows. Later, I tried an old Red Hat and then returned to Ubuntu. Once I was able to get online with Ubuntu, I got rid of Windows and haven't used it since. Only at the office where I worked. Say last time I used Windows on my PC was about 2008, to edit WarCraft II maps :P

I've tried Fedora and OpenSUSE, but I always end up going back to Ubuntu. There's something I don't like about it, though: it's bloated and too commercial. It is known to send you dash search information to third parties unless you opt-out. That's why I want to switch, but I want to switch to a distro where I have true control. Until then, I'll stay with Ubuntu. I have the feeling Arch might be the distro I'm looking for, but I'm certain I need to get prepared :D
Title: Re: Introducing my new track editor
Post by: Cas on April 07, 2015, 08:01:14 AM
Well, I think I've finally got it ready for the first non-beta version. This is Cas-Stunts 2.1 and it's complete. Of course, there are still many things I want to add, but for this version, it's ready. Only thing is I still haven't been able to build it for Windows, but you can try the other two. What took most of my time was the graphics. I wanted to have a complete new graphics set. Now I will be able to concentrate in functionality. I'll be uploading the Windows executable soon, hopefully tomorrow.
I built a simple website for the editor. You can check it and download it there. Tell me what you think:

http://castunts.lixter.com/index.html (http://castunts.lixter.com/index.html) 8)

EDIT: It's updated now. The Windows executable is available too!
Title: Re: Introducing my new track editor
Post by: zaqrack on April 10, 2015, 10:11:08 PM
the terrain brush is beautiful. Where were you in the past 15 years? You could have saved around a hundred hours of my life :)

Overall the tool is very pleasant and easy to use. I love how easy it is to delete unwanted track elements.
However, I am really a keyboard guy and depending almost entirely on the mouse is quite awkward. Especially in context of Stunts. I probably only need some time to adapt though:)
I know it is tough to deal with pixels but some upscaling would be nice. Elements are tiny even at my 1600x900 resolution. I assume I could use the dos executable and the DosBox scaler though...


Title: Re: Introducing my new track editor
Post by: Cas on April 11, 2015, 12:54:33 AM
Thank you, Zak!

Yeah, I've already thought about the size. I wanted to make it bigger, but I started with graphics borrowed from the built-in editor, which are 16x16 and slowly made my own. I'm planning to make a whole new environment, somewhat smaller than 1024x768 with bigger graphics, but that's going to take quite some time. What I could do as a temporary fix is a 2x zoom of the whole thing, but it'd go 1280x960. Uhm... I think I should better just make a whole new bigger graphics set.
What will come very soon is a lot more keyboard, because I do have that crave for keyboard shortcuts too. There are also some suggestions by Duplode I'm wanting to implement. The graphics kept me busy for a long time.
Title: Re: Introducing my new track editor
Post by: Shoegazing Leo on April 12, 2015, 04:34:21 AM
Very good and easy to use. I can edit track without dosbox, then I can test when edit.
Title: Re: Introducing my new track editor
Post by: Cas on April 12, 2015, 07:28:33 AM
Thank you, Leo!

Yes, that's a comfortable side of it!  I'm now working on bigger graphics. It will take some time, but it'll be worth it :)
Title: Cas-Stunts 2.2 - high-res graphics!
Post by: Cas on May 05, 2015, 01:31:09 AM
Guys, it took me some time, but a new version of Cas-Stunts track editor is ready with bigger graphics. I'm very slow at drawing!  You can download the new Cas-Stunts at http://castunts.lixter.com (http://castunts.lixter.com).

The graphics still need a couple of touches and there's some empty space in the panel I want to organise. Many features are in the process of being implemented and some new bugs may be present because I had to modify the code significantly for the new graphics to work. Please do let me know of any issue or suggestion. DOSBox support has been dropped for now, as it seems DOSBox does not recognise 1024x768 pixel resolution. I will try to find a solution for that, although other things have a higher priority in the project. If you find a way to make the program run under DOSBox without modifications, please tell me.

Duplode: PgUp/PgDn and file-searching as you type have been implemented too!
Title: Re: Introducing my new track editor
Post by: Duplode on May 05, 2015, 04:25:29 AM
Sounds nice! Hopefully I'll be able to give it a proper try soon.
Title: Re: Introducing my new track editor
Post by: zaqrack on August 30, 2015, 02:57:30 PM
I was unable to download the latest package. Is it still available?
Title: Re: Introducing my new track editor
Post by: Duplode on September 04, 2015, 06:03:50 AM
I was unable to download the latest package. Is it still available?

Cas' site is offline. I had downloaded the latest version back in May, so I will make it available from Southern Cross on the next update (which should happen within the next few days, hopefully).
Title: Re: Introducing my new track editor
Post by: dreadnaut on April 03, 2016, 01:12:20 PM
Cas' site is offline. I had downloaded the latest version back in May, so I will make it available from Southern Cross on the next update (which should happen within the next few days, hopefully).

Do you still have the file around, Duplode? Trackblaster is not for me :|
Title: Re: Introducing my new track editor
Post by: Duplode on April 04, 2016, 07:28:29 AM
Do you still have the file around, Duplode? Trackblaster is not for me :|

Timely reminder. I didn't upload it to Southern Cross back then because I couldn't find the package as Cas distributed it originally. I attached to this post whatever I found within the "cast220b" subdirectory in my Stunts folder, including a DOS extender which wasn't in the original package. The Windows version seems to be working fine; as for the other two, I can't test them at the moment (the 2.20 DOS build doesn't work in DOSBox, and the Linux one is giving some dynlink error in my system).
Title: Re: Introducing my new track editor
Post by: dreadnaut on April 04, 2016, 09:41:26 PM
Thank you!

A bit cpu intensive, but definitely more usable.
Title: Re: Introducing my new track editor
Post by: Cas on August 04, 2016, 05:49:22 AM
Sorry about my disappearance, guys. And yes, the site went down. I've been fixing some bugs in the last version of Cas-Stunts. Here it is:

Cas-Stunts 2.23b
https://mega.nz/#!JZRFCIbK!FQP1pAHV50CLZnjrALxMQytaVqSgxwk1BvJZJm5EpZg (https://mega.nz/#!JZRFCIbK!FQP1pAHV50CLZnjrALxMQytaVqSgxwk1BvJZJm5EpZg)

Fixed a problem with file filters, added the ability to edit with the keyboard (which Zak told me he liked from TB) and made a couple of touches that can't be seen, but will help add more features later. I also split the Linux version in two (you have a 32bit and a 64bit executables) and the Windows executable is 32bit, which appears to run fin in Win64 as well.

As Duplode said, this one doesn't work in DOSBox. I realised later that resolutions higher than 800x600 don't work well there. Even in FreeDOS, it works, but it's kind of slow. Next time I want to make something that can run on all three platforms, I'll make sure it can also work in two different resolutions. But if you do prefer to run a version that works well in DOSBox, even if it has fewer features and I'm not maintaining it anymore, this is the last stable version that ran well in DOSBox:

Cas-Stunts 2.10
https://mega.nz/#!RMwlXQQI!_9VXPP-SgEFix8pw98Aa2tFVX83VUnopYoBxoe13Yz0 (https://mega.nz/#!RMwlXQQI!_9VXPP-SgEFix8pw98Aa2tFVX83VUnopYoBxoe13Yz0)

Question. Is there a chance I could get Cas-Stunts hosted here?  My free hosting sites keep going down because of the lack of visits, ha, ha. Also, it'd be nice to have a cast.stunts.hu  ;D  or just to have my editor in the tool list at zak.stunts.hu  :P
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 04, 2016, 09:08:34 PM
Welcome back Cas!

Question. Is there a chance I could get Cas-Stunts hosted here?  My free hosting sites keep going down because of the lack of visits, ha, ha.

I have just uploaded the latest version to  the tools collection at Southern Cross (http://scr.stunts.hu/mods.html)  -- as the posts upthread show, something I was supposed to do eleven months ago!

A few random notes:
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 05, 2016, 12:39:47 AM
Thanks, Duplode!

I can quickly and easily add the grid lines. I was already thinking about that. I'm also wanting to add select/copy/cut/paste + rotate/flip. That will take a little more work, but I can do it. I also could add something to take care of the CPU usage. My idea is to issue idle sleeps while the mouse cursor is not being moved in the program window. This means the editor would still eat up CPU while you're editing, but would become extremely light when not in focus or when you're just viewing the track. Would that be good?
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 05, 2016, 01:33:55 AM
I also could add something to take care of the CPU usage. My idea is to issue idle sleeps while the mouse cursor is not being moved in the program window. This means the editor would still eat up CPU while you're editing, but would become extremely light when not in focus or when you're just viewing the track. Would that be good?

Yup, that would help -- a big gain with that plan is that it would be possible to keep the editor open alongside Stunts without interfering with DOSBox performance.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 05, 2016, 07:12:35 AM
Great!  Here's an update:
https://mega.nz/#!5YRXyIxL!pQciGDMII_UkfnlkMuYNk_jrcoBYpZrN9PCWBtlwjTk (https://mega.nz/#!5YRXyIxL!pQciGDMII_UkfnlkMuYNk_jrcoBYpZrN9PCWBtlwjTk)

Added:
- By default, the grid will be visible. You can turn it off and back on with CTRL+G at run-time or modify cast.cfg so that it always starts with the grid on or off.
- Select, copy, cut and paste have been implemented and work well, although there's something I'm not getting used to. Try it and tell me what you think.
- Anti-hogging system implemented. You have to be at the editor. After a second of not having the pointer on the window and not hitting any key, it'll quit hogging. It will take half a second for it to respond again when you return to it. If you're anywhere else, such as at the presentation screen or opening a track, the anti-hogging system will not activate.

Something to check:
- I've noticed that the Windows build opens up a Wine console window alongside the main program window in my system, which I don't remember having seen before. I have no idea why this happens and I wonder if the same thing occurs when running the program on a real Windows machine.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 06, 2016, 06:08:28 AM
Great!  Here's an update:
Now available from Southern Cross :)

Added:
- Select, copy, cut and paste have been implemented and work well, although there's something I'm not getting used to. Try it and tell me what you think.

The one thing about the current system that has drawn my attention is that before pasting you have to select a rectangle of the correct size. Perhaps it would be more intuitive if, on clicking the paste button, a highlighted rectangle corresponding to the area to be pasted (and possibly with its track elements drawn on it) began to follow the cursor, allowing you to preview the results before a second click confirms the pasting. (An additional suggestion in the nice-to-have category would be an indicator of some sort on the left panel that there is something in the transfer area waiting to be pasted.)

Something to check:
- I've noticed that the Windows build opens up a Wine console window alongside the main program window in my system, which I don't remember having seen before. I have no idea why this happens and I wonder if the same thing occurs when running the program on a real Windows machine.

I can reproduce it, both when launching with Wine (but not when doing so from a terminal) and with a Windows XP virtual machine.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 06, 2016, 10:18:59 PM
Quote
Perhaps it would be more intuitive if, on clicking the paste button, a highlighted rectangle corresponding to the area to be pasted (and possibly with its track elements drawn on it) began to follow the cursor, allowing you to preview the results before a second click confirms the pasting.

Yes. That was exactly what I was thinking of. I thought it'd be complicated to accomplish, but after a few changes, I was able to implement it. There are a few other things I would like to change before posting the new version, though.

And I haven't figured out why the console window appears in Windows. I suspect it's triggered by the program icon, I mean, I think it wasn't there when the program did not have a custom icon. I'll make some tests with that.

Another thing I'm thinking of, for the future, is to make the editor able to add meta-data to the track as an overlay, including a track title, author name, creation time and date, editing time and some championship-oriented information, such as a recommended car, which race and which championship it was designed for, etc. I remember that I once posted a track with an overlay and ZakStunts system was not taking it, so if I do this, I want to make sure the website will be compatible with it. The information I would add would also be useful to the site so, instead of just skipping it, it'd be good to agree on a format that's easy to handle for the site so the info can be shown. Any ideas about this?

I'll post a new version soon
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 07, 2016, 04:26:16 AM
Another thing I'm thinking of, for the future, is to make the editor able to add meta-data to the track as an overlay [...] Any ideas about this?

For now, just a preliminary warning: IIRC (it was many years ago, and so I might be misremembering it) I once managed to corrupt/write garbage to memory by doing similar things with game files, so any such feature probably should be tested quite carefully.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 09, 2016, 08:28:35 AM
Update!

Cas-Stunts 2.3.1 beta
https://mega.nz/#!4JIHmLDJ!jukTQzipiDc09SKaEb45i7TjAVB29Nw4nFhAY3Y2nUA (https://mega.nz/#!4JIHmLDJ!jukTQzipiDc09SKaEb45i7TjAVB29Nw4nFhAY3Y2nUA)

Fixed:
- Console window opening beside the main program window in Windows (ugh... so many "windows"!) :P
- Select, Copy, Cut and Paste are no longer uncomfortable (especially Paste)

New features:
- Keys to select, copy, cut and paste. Hold CTRL to select and use standard CTRL+C, CTRL+X, CTRL+V to copy, cut and paste
- Flip and rotate on the fly. Also use F, SHIFT+F, R and SHIFT+R
- Enable/disable terrain pasting with T, also on the fly

Changed:
- T no longer switches terrain editing mode
- Debug mode is now enabled/disabled with CTRL+Q, since CTRL+X is now used for Cut

I expect this will be a much more user-friendly version of the editor. There have been many changes so I expect a bug or two might be hiding underneath some key or mouse button. Let me know if that is the case. Also... were you able to verify the anti-hogging system works well?
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 10, 2016, 12:09:13 AM
Excellent work! I believe we are quickly approaching the point at which we should recommend Cas-Stunts over TrackBlaster to newbies  :)

Also... were you able to verify the anti-hogging system works well?

I forgot to mention that in the last post. Here it works exactly as you described, both with the Linux build and the Windows one under Wine.

There have been many changes so I expect a bug or two might be hiding underneath some key or mouse button. Let me know if that is the case.

Here are a few things I noticed -- truly minor stuff next to the strides made over the last few updates:

And two further feature suggestions:
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 10, 2016, 01:08:09 AM
Thank you, Duplode!  And yes... some things are already in my work queue.

Quote
The flip, rotate and mirror commands probably should also act on selected tiles without having to cut and paste them beforehand.
I've thought of this. It's easy to implement. I'll do it.

Quote
[...]given the four new buttons on the left panel (which currently do nothing).
They do have a function!  When you're pasting, you can flip and rotate using those buttons, not just the shortcut keys. Yet, it'd be good for them to have a function when you're not pasting.

Quote
Similarly, pressing DEL with selected tiles probably should delete their elements.
Could be... Anyway, you have CTRL+X (cut). DEL would delete the region without copying it to the clipboard, which would be unrecoverable as of now. I think this is a good thing to implement once I have added undo/redo capabilities.

Quote
If you have a multi-tile picked the keyboard editing cursor will occupy more than one tile; however, pressing DEL will only delete the upper left tile.
I had not thought of that. Yes, I think it'd be better to expand the keyboard cursor so that it marks not only the current track element, but also the element on the current tile. This may take a little more work, but I can do it.

Quote
[...]it took me several seconds to realise the "LMB" in the mouse selection shortcut stood for left mouse button.
As I was writing that, I realised it wasn't completely obvious, but "left-mouse-button" didn't fit there. I figure I should make some nice touches to the documentation. Do you think a PDF with images would be better?  Or is it good to use a standard TXT format?  Now I'm thinking it's not so standard after all. Since I wrote it in Linux, it must be using 0Ah for line end, which would be ignored in DOS/Windows.

Quote
A copy-cut-paste mode for terrain.
This already can be done. Use T to switch terrain-pasting on. You can do it while pasting too. What cannot be done now is to past only the terrain. Internally, it is already implemented, but there is no key or button for that. I'm going to add some clickable indicators on the panel soon for these things, though.

Quote
A keyboard brush mode, either as an editing mode (analogous to what TAB does in TrackBlaster) or activated by holding a key.
I have something better than that in mind, but it's kind of challenging. I'll see what I can do.

Also... what do you think about licensing?  The project is currently freeware. I was considering making it free software.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 10, 2016, 01:46:16 AM
Quote
[...]given the four new buttons on the left panel (which currently do nothing).
They do have a function!  When you're pasting, you can flip and rotate using those buttons, not just the shortcut keys. Yet, it'd be good for them to have a function when you're not pasting.

Oops! Somehow I hadn't thought of this meaning and the corresponding motion while testing.

Quote
Similarly, pressing DEL with selected tiles probably should delete their elements.
Could be... Anyway, you have CTRL+X (cut). DEL would delete the region without copying it to the clipboard, which would be unrecoverable as of now. I think this is a good thing to implement once I have added undo/redo capabilities.

I see -- just like X in vi  :) The relatively minor advantage of using DEL will be not overwriting the clipboard then. In any case, I agree undo/redo should probably come first. 

I figure I should make some nice touches to the documentation. Do you think a PDF with images would be better?

All things equal, I tend to favour simple text files, though images might be useful indeed. There is also the option of going for both by writing the readme in markdown and adding a rendered PDF version alongside it. As for the current readme, I'd only suggest wrapping it to 72 characters and changing the line endings to DOS format (which would ensure it is easily readable under both target OSs).

Quote
A copy-cut-paste mode for terrain.
This already can be done. Use T to switch terrain-pasting on. You can do it while pasting too. What cannot be done now is to past only the terrain. Internally, it is already implemented, but there is no key or button for that. I'm going to add some clickable indicators on the panel soon for these things, though.

Awesome -- I had skipped that line of the release notes.

Also... what do you think about licensing?  The project is currently freeware. I was considering making it free software.

It's up to you of course, but I would wholeheartedly endorse such a change.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Cas on August 12, 2016, 06:06:44 AM
New update!

Cas-Stunts 2.3.2 beta
Download this version (https://mega.nz/#!8QAAgAYI!AKr2y5OvkbHyAroC9ncXVV9aHCfxMAMEZgJEu5PRi74)

New features:

By far, the most complex changes are in the Undo/Redo and Flipping/Rotating options. They seem to work well, but maybe there's a bug I haven't seen. Notice that rotating the selection in situ is not possible unless it's a square. Also, being able to disable track affected by pasting operation now allows, for example, for copying the terrain from a track. Current Undo/Redo system can hold 29 levels. This is because they're supposed to be 30, but there's a known bug that seems to be innocuous. Undo level can be easily modified. Any thoughts? :)
Title: Re: Cas-Stunts track editor
Post by: Shoegazing Leo on August 12, 2016, 07:19:58 PM
My last two tracks were made almost 100% on Cas editor.
Title: Re: Cas-Stunts track editor (ex "Introducing my....")
Post by: Duplode on August 12, 2016, 11:06:53 PM
New update!

Already uploaded!  :) Generally speaking, the new features work beautifully. It is a minor detail, but I particularly liked the look of the mode indicators.

New update!

Cas-Stunts 2.3.2 beta
Notice that rotating the selection in situ is not possible unless it's a square.

Makes perfect sense. It would be nice to have a modifier (SHIFT?) to drag square selections without having to count pixels, though that lies in gold-plating territory already.

The only issues I noticed this time were:

Title: Re: Cas-Stunts track editor
Post by: Cas on August 13, 2016, 02:10:20 AM
@Leo - Thank you!  And what did you use for the other almost 0%? :P  The built-in editor or Track Blaster?  I'd like to know which things are still felt more comfortable in editors other than Cas-Stunts. Track Blaster is actually a great work and if I understand correctly, it was made for the Stunts community, just like Cas-Stunts, so I have great appreciation for it.

@Duplode:

Thanks for the review!  I hadn't seen the problem with SHIFT+R. Just fixed it. It was almost a "typo". My idea with full track transformation was that it'd be done with the mouse. When you're using the keyboard, just like you see it, it's more comfortable to have a current element transformation instead. Yet, I could implement a full-track selection with they keyboard easily.

I was unable to reproduce the errors with Cut + Undo that you mentioned. Probably I misunderstood the error. Could you please give me sequential details on how it gets to happen?  Maybe I haven't tested it thoroughly enough.

As regards undoing copy operations, my idea with the Undo/Redo system is that only grid modifications are affected by it, so the clipboard is not part of that system. I considered making it part, but then you would sometimes press CTRL+Z and see nothing happen and think something is wrong and you've actually dropped what you had in the clipboard, which is not immediately seen. Also, say I add the controversial meta-data, I don't think meta-data modifications should be undoable with CTRL+Z either. But if you think it'd be useful, I could think of "uncopying" and "uncutting". Paste is indeed undoable because it does affect the grid.

The forced-square selection system is not difficult to produce. I will consider it

EDIT:  I think I found what you meant. I've fixed something that was wrong. It affected both cutting with CTRL+X and deleting blocks with DEL. After these operations, the changes were not being pushed to the Undo queue. On the other hand, cutting by pressing the corresponding panel button was pushing the changes. You can verify that this error would not occur if you use the panel instead. In that case, I've fixed it now for the keyboard too.
Title: Re: Cas-Stunts track editor
Post by: Duplode on August 13, 2016, 02:47:44 AM
My idea with full track transformation was that it'd be done with the mouse. When you're using the keyboard, just like you see it, it's more comfortable to have a current element transformation instead.

Oh, sure -- once more I skipped one obvious action to test  :)

As regards undoing copy operations, my idea with the Undo/Redo system is that only grid modifications are affected by it, so the clipboard is not part of that system. I considered making it part, but then you would sometimes press CTRL+Z and see nothing happen and think something is wrong and you've actually dropped what you had in the clipboard, which is not immediately seen. Also, say I add the controversial meta-data, I don't think meta-data modifications should be undoable with CTRL+Z either.

I'd agree on those being good reasons for not implementing it. The benefit would be marginal, and as you say it could get confusing.
Title: Re: Cas-Stunts track editor
Post by: Cas on August 27, 2016, 05:56:38 AM
New update:

Cas-Stunts 2.3.3 beta
Download this version (https://mega.nz/#!JAAXxL4I!enrMhyIhyrLkbGx37rXiC-Y1aHXTvOHjPTB7NIud-K4)

New features:

Some bugs fixed, some bugs still linger. Next update, I shall kill all bugs and remove the beta.
Don't know if I should publish the meta-data format spec here or in the other thread... probably in the other thread.
Title: Re: Cas-Stunts track editor
Post by: Duplode on August 28, 2016, 03:24:43 AM
Nice!

In debugging mode, the parent element is shown as a small icon, for clarity

At first glance, I found that a little uncomfortable --- the icons get quite small for 2x2 elements, and the track direction becomes a little harder to follow with the eyes. Then, however, I remembered that (as the name says!) you are not supposed to do most of your editing in debug mode, but only activate it if you get confused about the fillers. Additionally, the small icons sidestep the issue when displaying main tiles of 2nd or 4th quadrant large corners (in which only a tiny sliver of the corner near the centre is displayed), which is a far more annoying issue. On the whole, therefore, I now feel this change is an improvement.

Tracks with info can be saved as a single file or split, which can be changed at run-time while saving, but also in the configuration file for start-up default

I will ask a few more things about the metadata in the other thread, but here is something specific to Cas-Stunts: One thought that crossed my mind was whether it would be better to delete the .smd file on changing the format from split to combined, as otherwise a superfluous and possibly outdated .smd file would be left behind. However, doing so might not be worth the trouble, as if later on you add an "Export Metadata" command the same "issue" will reappear, with no sensible way of "solving" it (not to mention that, with the current behaviour, changing the format from combined to split and then back to combined works as an export command of sorts).
Title: Re: Cas-Stunts track editor
Post by: Cas on August 28, 2016, 04:36:56 AM
Yeah, the small icons, I decided to implement when I noticed how the arrows in debug mode make it very difficult to identify the track element. For two-tile elements, there's no problem, but four-tile ones normally keep at least two tiles when you're building an illusion track. Very rarely only the parent element will be used, so in non-debugging mode, it's almost always clear what element is there. In debugging mode, on the other hand, clarity focuses on showing where fillers are, so you are left with only one quarter, which, as you say, it's too tiny to distinguish in most cases.

About deleting the .smd file, I hadn't thought about that and now that you mention it, I see the issue with the export format too. One thing I can say that will make this less of the problem is that .smd files contain a hash that allows to link them to a certain track; therefore, forgotten .smd files would not get accidentally linked to the wrong track. Anyway, I agree this is not a comfortable behaviour. My original intention, as you know, was to only implement the overlay system, which would only need to be ignored by applications not using it, but I'm sure we can figure out a method we can all find optimal.
Title: Re: Cas-Stunts track editor
Post by: Cas on August 31, 2016, 08:08:30 AM
Upgrade. Beta removed!

Cas-Stunts 2.4
Download this version (https://mega.nz/#!FVYzTLAJ!GqxWSkTVUOqxumJ0ahjIsP6GWW7W4viHh0m3jtbz8as)

This is mostly a bug fix and beautifying upgrade. Now I can concentrate on new features for the next version. This is what we've got on this one:

New features:

Fixed bugs:
Title: Re: Cas-Stunts track editor
Post by: Cas on September 11, 2016, 06:42:52 AM
One more update. Going back to beta, but with a few bells and whistles. There's a lot more "invisible work" that will help in the future than what's evident, but still, this time you'll enjoy a few new features. So...

Cas-Stunts 2.4.1 beta
Download this version (https://mega.nz/#!wNYjhYYK!DN-DOZ_Nbrz5QSvFF2mNAN9q_toCXlc0pxw4cVswodI)

New features:

Lots of bugs have been fixed, as can be seen in the distribution file. However, with the introduction of these complex features, I fear new bugs may have come up. If you give the track checking system a hard time, you may encounter some. Also, the built-in scenarios have not been made with exquisite patience. If some of them are too ugly or dull, they could be removed and replaced with better ones. Suggestions are welcome :)
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 12, 2016, 03:19:17 AM
First of all, I love the long list of built-in terrains. It feels like starting a new town in SimCity  :)

It is great to finally have an external track checker. You can be sure I will throw everything I've got at it!  :D Here are a few issues I have noticed so far:
There are other smaller issues with the checking rules, but given the infuriating amount of edge cases, exceptions and exceptions-of-exceptions of the in-game track checker I believe it will be more useful for everyone if I, rather than pointing them one by one, write down a complete description of the rules as applied by Stunts. Between the experiments I have accumulated over the years and what we have learned through restunts that won't be difficult to prepare, and so I should be able to to post it here in the near future.

Finally, a question about distribution. Now that there is a stable version, what do you prefer for me to make available at Southern Cross: the latest stable version, the latest version even if it is a beta, or both of them?
Title: Re: Cas-Stunts track editor
Post by: Cas on September 12, 2016, 05:11:27 AM
Thank you so much for testing, Duplode. This track-checking system is extremely complex!  Even before reading your post, I had acknowledged a number of errors (or sometimes not errors, but differences from Stunts) and other limiting issues that I still don't know how I will solve. Just to analyse tracks, I had to build several arrays and user-defined types (structures), plus a number of testing routines, many of which are recursive. I am still working on adding more features and, although I have not finished what I was doing, you may be interested in what I've just added: Cas-Stunts can now estimate the time it will take you to race the track OWOOTly. This will be yet another feature to play with, ha, ha.

Now, going back to the issues:
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 12, 2016, 06:11:32 AM
Cas-Stunts can now estimate the time it will take you to race the track OWOOTly. This will be yet another feature to play with, ha, ha.

I think this feature will be quite useful for me... More often than not, when I sit down to design a competition track the first draft comes out about a minute longer than it was supposed to be, and I have lots of trouble deciding which parts of the track I should cut. In such cases, a lap time estimator would be like a early warning system  :)

  • I tested your pathological track, found the problem and solved it. Still, it wasn't really an "error", but a limitation. Cas-Stunts divides the track in "sections" and then creates "paths" combining these sections. The maximum number of sections was 100 and your track had more than 100. Now the maximum is 255. Still, a very pathological track may make it jump. Extending it past 255 will require me to change some functions because of obvious reasons. It's nice to see that even a track like the one you sent me works with just 255 maximum sections. I should make Cas-Stunts at least warn when this number is exceeded. If it worked in Windows, it means it did by overwriting other data in the program memory and probably was unstable after that.

There is a maximum limit of simultaneous paths enforced by the checker (I think it was 64, though I'll have to double-check it). There is no such limit for non-simultaneous paths, though there should be one: if there are way too many overall paths some of them will not be recognised (and so you will get penalty for them), and the game will crash if you try to race against an opponent (the SFOO5.TRK attached below is an extreme example of such a situation). All things considered, I think it would be entirely OK for the Cas-Stunts checker to give up with a warning at 255 sections.

  • I haven't been able to reproduce the second problem. By dual-way, do you mean a track with more than one path or a track that attempts to re-enter another path in the wrong-way?  In the first case, everything seems to work fine on my side. In the second case, it's not doing it right, but it's still not placing the cursor at (1, 1). Can you send me a track in which this happens?

By "dual-way" I meant a track with more than one path. I have checked it again, and indeed the conditions for triggering the issue are more narrow than that: you need to have a straightway-before-jump error and a path rejoin at some point after it -- even if the track isn't actually dual-way. The DUALGAP.TRK attached is an example.

  • About distribution... this time I kept the previous one because I realised I may have introduced bugs, although the bugs would be only in the new sections (especially in track-testing). I think it'd be nice if you included the new version, but keeping the stable one is important. Also, I'll be posting a newer one in a matter of days, so if it's much work for you, it's OK if you just keep the stable one on the site. Anyway, the new one is here. But if you include both, even better.

That's fine. I will keep the main download link pointing to the stable version and add a link to the beta to the description text (like I used to do with the Stressed binaries and sources) .
Title: Re: Cas-Stunts track editor
Post by: Cas on September 12, 2016, 07:14:07 AM
Uhmmm... that DUALGAP error is really interesting. It definitely is a bug in Cas-Stunts, but I will have to trace carefully to find it. It's not obvious what causes it. I'm sure I can solve it, though.

The other track exceeds 255 sections and is crashing Cas-Stunts the same as before. I'll have to add a warning, definitely.

The time estimation is currently hard-wired to my skill level. Before passing it to you, I'll add an option to calibrate it. There will be a track included with Cas-Stunts (could be 4am.trk; castunts.trk is not a good idea because it has two paths) that you race the best you can in OWOOT and then enter your time somewhere and Cas-Stunts will use that to calibrate your time estimations. I would like to also include a list of default "famous pipsqueaks", ha, ha, so that others can use the estimations for reference. If you'd submit your calibration time, I can add you and so I can do with others at ZakStunts that were interested. Also, I can use timings at old OWOOT tracks to calibrate Ayrton, for example.
Title: Re: Cas-Stunts track editor
Post by: Cas on September 17, 2016, 08:57:42 AM
Significant update!

Here, I've concentrated more on adding features than on fixing bugs. Now the feature set of Cas-Stunts looks almost complete :)

Cas-Stunts 2.4.2 beta
Download this latest version (https://mega.nz/#!BJ5BCbhJ!1JkMfS1u7mzJUdEwstRE1EYUuSsKci3qLPZF4r8H3C0)

New features:

Besides, many bugs were fixed mostly having to do with the track-check system!

Duplode... this one has a lot to play with. It's much more comfortable now to edit tracks with the scenery thingy. I hope the guys give it a try.
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 19, 2016, 04:02:13 AM
The new big features are endearingly sophisticated. I have particularly enjoyed the elegant path analyser.
Title: Re: Cas-Stunts track editor
Post by: Cas on September 19, 2016, 07:13:46 AM
Thanks... you have no idea how much work that was  ;D  And it still has tons of bugs.
If you find something that must be changed, please do let me know
Title: Re: Cas-Stunts track editor
Post by: zaqrack on September 20, 2016, 01:32:23 PM
ZCT178 makes the track analysis and the editor crash.  8)
Title: Re: Cas-Stunts track editor
Post by: Cas on September 20, 2016, 07:43:54 PM
Ha, ha!  Thanks, Zak!  I'll download it and check it. I've made some changes since last release, so I may have fixed that already, but I want to make sure :)  Also, I'm aware of some errors in scenery generation.

EDIT: Found the problem!  Cas-Stunts supported up to 100 paths and this track contains 256!  I've just extended so now the editor will be able to handle up to 1000 paths. It will still crash if you add tons of splits. What I have to add is something that detects when the number of paths is exceeded, just like it already does with the number of sections.
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 20, 2016, 11:55:33 PM
I have raced on ZCT(1)78 two times, and reasoned about the paths at least once, but never quite realised there were so many paths. Exponentiation has a funny way of catching you off guard  :)
Title: Re: Cas-Stunts track editor
Post by: Cas on September 21, 2016, 01:21:46 AM
Yeah, lucky Zak pointed this out, because I hadn't thought paths could ever shoot up so high. The thing is like this: Cas-Stunts analyses tracks using a three-layer method. First, the lowest level analyses the connection between each track element and the next to determine whether there's a local error and classifies these errors as TF (track-fatal, i.e.: that cause the track to not be accepted), PF (path-fatal, i.e.: that particular path is interrupted or otherwise fails to reach the s/f line) and NF (non-fatal, that is, warnings). That's enough for "splitless" tracks. Then, the second layer divides the track in sections. Each section begins either at the s/f line (first section, only one section starts there) or at a joint and ends either at a split point or at the s/f line (last section, only one ends there). The third layer resolves paths (a way from the s/f line to itself in closed-circuit or from the s/f line to somewhere else, open path, non-finishing). As a consequence, each split will create new sections and also new paths.

If sections are linked in parallel, both paths and sections will grow arithmetically (linearly), with sections growing about twice as fast. But when groups of sections are connected serially, the number of paths multiplies and grows geometrically, which I hadn't taken into account!
Title: Re: Cas-Stunts track editor
Post by: Cas on September 27, 2016, 05:17:51 AM
Update. Last major option implemented!  From here on, I'll just complete some things that are unfinished and fix bugs. I'll work to remove the beta.

Cas-Stunts 2.4.3 beta
Download this latest version (https://mega.nz/#!BZR12IiA!O_qympFSOQd-aWPEVzEvEgnFT4wfKM2p8Xlz5jo6vIY)

Although this is still a beta, I expect this version to be pretty stable

New features:

Fixed bugs:
Title: Re: Cas-Stunts track editor
Post by: Shoegazing Leo on September 27, 2016, 05:13:39 PM
I liked the version which I dowloaded (one before this last). I considered a revolution for who makes dual tracks and has the intention to do ways with similar times.
Title: Re: Cas-Stunts track editor
Post by: Cas on September 27, 2016, 06:59:28 PM
Thanks, yeah, I tried to approximate the time it'd take to race each path. You can measure both the length in tiles and the time approximation. For the second, you can calibrate with the time you'd make in 4am. I could make it possible to calibrate with any track, but there's a catch I would have to solve to do that.

This last version also has some corrections in path-solving.
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 28, 2016, 01:56:08 AM
Many keyboard shortcuts for selecting tile types. [...] and more.

There are quite a few more, indeed! Here are a few ideas about completing the set, hopefully without exhausting the available keys  :)

Besides, "Z" for linking tiles. This is a bug (since "Z" is supposed to select the corner tile); I'm changing it to "U" on the next version

Now that all those other shortcuts cycle among multiple variants of a track element, one alternative is putting all fillers under the same shortcut, which would save you two more keys.

(Before changing subject: the only bug I have noticed with these track element shortcuts is that G skips one of the up/down corks, namely the ascending-towards-south clockwise one.)

The DOS version is no longer buggy. Still, it won't run in DOSBox, since that would require redesigning the whole editor to make it fit in a much smaller screen

I wonder if there isn't a more subtle issue involved here. According to the DOSBox Wiki (http://www.dosbox.com/wiki/dosbox.conf#.5Bdosbox.5D), the default svga_s3 choice of emulated graphics hardware is supposed to support 1024x768 in full colour. Is it possible that some sort of configuration of your graphics toolkit might be leading to an incompatible video mode? (This is just an uninformed guess: I know nothing about the interaction between DOSBox and FreeBASIC SDK you use, and so it is entirely possible that I am talking nonsense about this.)
Title: Re: Cas-Stunts track editor
Post by: Cas on September 28, 2016, 04:52:47 AM
About the DOSBox issue, I just read the link. The s3svga option is about S3 cards. Makes me think it has to be interfaced as if it were an S3. On the other hand, if you go down that page, you'll see that the VESA interface only supports up to 800x600 and in DOS, FreeBasic relies on VESA. I am using no toolkit. FreeBasic has an internal graphics library that provides primitives (like lines and text drawing). I'm drawing the buttons and pull down menus myself and I'm operating them manually... In other words, I've built my own toolkit from scratch in the measure that Cas-Stunts required it.

Thanks for pointing up the missing element for G. I hadn't noticed it. I chose "G" for those because "S" for spin was taken by straightway and "C" for cork u/d was taken for track check, but at least the letter "G" resembles these tiles :D

Uhm.. I had thought I could save half the shortcut by using the link option to set the transitions, but maybe a special key for that could be more comfortable. I imagined the designer drawing first the primary elements in a section, then pointing at the spot in-between and clicking "link" to create the transition. Did you notice that you can use "link" both with the keyboard and mouse cursors?  Another thing that could make this more comfortable is the linear keyboard editing mode that I had told you about

I could easily implement a corner shortcut. I didn't do it because I thought "link" would cover for it for small corners and Select+Enter for most of the time would be more comfortable, but if I reorganise well, I could make space for it. The same goes for crossroads. I had thought linking would be comfortable enough, but I could pack it together with splits. Pressing "link" many times will give you all possibilities, so you can also use it to select different ramps. I omitted the start/finish line precisely for the reason you give (it's only used once) and because when you start the editor, this tile is selected and you can easily rotate it and change its material, but again, maybe I can just give everything a shortcut. There are enough keys if I pack some things together, you're right.

With scenery, I thought there's already the Scenery Generation option, but I could switch by type with just one key and then rotate, like you say. I could make this shortcut to always select the item that's facing in the same direction as current item if you're already selecting scenery. Other items seem to rotate when you press their shortcut again. This is because the shortcut looks for the next item of the same time, which is often the rotated version, but doesn't have to be.

OK, then... I'll try to leave no item without a shortcut :)

How does the Tournament integration option work on your end?
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 28, 2016, 07:59:40 PM
On the other hand, if you go down that page, you'll see that the VESA interface only supports up to 800x600 and in DOS, FreeBasic relies on VESA.

That explains it, I guess. (By the way, by "toolkit" I just meant "whatever it is in the FreeBasic infrastructure that allows you to draw things on screen". I was going to write "SDK" instead, but that would sound even more Java-esque  :D)

I imagined the designer drawing first the primary elements in a section, then pointing at the spot in-between and clicking "link" to create the transition.

That is not what I usually do, but it does make sense, and I think I could get used to it without too much trouble :)

I could easily implement a corner shortcut. I didn't do it because I thought "link" would cover for it for small corners and Select+Enter for most of the time would be more comfortable [...]

Using "link" for individual corners would be a bit further away from my usual workflow (which is not at all universal, of course -- what follows is just to explain where I'm coming from). I tend not to think of my tracks as modified rectangles or straights linked by corners, but as something more... let's say "organic": most of the time I do not start with an overall track shape set in my mind, but begin with one or two isolated sectors and let the track grow around them, making lots of small changes as I go along.

The same goes for crossroads. I had thought linking would be comfortable enough, but I could pack it together with splits. Pressing "link" many times will give you all possibilities, so you can also use it to select different ramps.

Do you mean placing ramps and splits together? If so, that might not work so well: there are eight splits for each size/material combination and twelve ramps overall, which sounds like a lot to cycle with a single shortcut.

With scenery, I thought there's already the Scenery Generation option [...]

As far as my tracks are concerned, I almost always arrange the scenery by hand, and so there will be quite a few opportunities for using any such shortcuts. That said: (1) Scenery shortcuts are certainly among the least important ones, for several reasons. One that just occurred to me is that in most large-scale scenery placement -- e.g. when creating a large forest -- you can fill the tiles with abandon without having to care about orientations. (2) The Cas-Stunts generator is flexible enough to make me consider using it, at least occasionally :)

OK, then... I'll try to leave no item without a shortcut :)

Sounds nice! :) Let's see how it will play out in practice.

How does the Tournament integration option work on your end?

No issues here -- it does what it says on the tin. I suppose the demo points towards a future in which we have a standard format for making, for instance, current scoreboards available, so that simply adding the relevant web address would be enough for the program to do the proper thing, right?
Title: Re: Cas-Stunts track editor
Post by: Cas on September 29, 2016, 01:11:35 AM
Quote
by "toolkit" I just meant "whatever it is in the FreeBasic infrastructure that allows you to draw things on screen"

Yeah, it's difficult not to use these terms today :P  Both "toolkit" and "SDK" sound like a different paradigm. It's like saying "folder" instead of "directory"... makes no harm, but we Linux users see a warning sign come up when we hear that word and wonder if maybe the guy assuming we're talking about Windows. I used to do all the blitting in assembly, but FreeBasic really does have very powerful primitives and for 2D, most of the time, it's not necessary to get that deep... and I like the fact that anybody can compile my source with just FreeBasic and no more requirements.

*  I've added shortcuts for everything. You'll see that in the next update. There's even one for transitions, but although you can use that, I have the feeling that it'll be more comfortable getting used to using the link shortcut, because the transition one requires that you press it again and again until you find the transition you're looking for. And about ramps, no, they have a shortcut of their own. What I mean is that ramps can easily be produced with the link shortcut most of the time.

I'm thinking it is still worth trying to implement the keyboard editing style I told you about before.

Quote
[...] so that simply adding the relevant web address would be enough for the program to do the proper thing, right?

Yes, that's my idea. If the tournament is ZakStunts, Cas-Stunts will parse the HTML. If it's any other, it will look for specific text-based configuration files from where it will get the info to do the same thing, so any tournament can implement that "protocol" easily without having to display a particular appearance. Downloading the current track from ZakStunts using Cas-Stunts can be more convenient than doing it from the website, because Cas-Stunts won't automatically save it to disk, but will just load it into memory and allow you to save it wherever you want, which by default, will be the directory you set in the configuration (probably Stunts' directory). Besides, Cas-Stunts gets the track title and author's name from the site and you can store that in your format of preference. On the other hand, the scoreboard is just a gadget and it will always be more comfortable to check it on the website, which also allows communication and navigation.
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 29, 2016, 02:34:43 AM
I'm thinking it is still worth trying to implement the keyboard editing style I told you about before.

Oh yes, that plan about a smart TAB brush! Am I right in suspecting that, at this point, it would be essentially an extension of the "link tiles" feature, powered up by the individual shortcuts? Suspending practical concerns for a moment, I'm imagining the following sort of behaviour, with examples in increasing order of trickiness:
(Do note that this whole vision is clearly biased towards the suggestions I made in the previous post. Reinterpret it as you see fit  :))
Title: Re: Cas-Stunts track editor
Post by: Cas on September 29, 2016, 04:33:11 AM
It's more or less like that, what I had been thinking. Although there are some differences, the spirit is the same and it still have some difficulties. I'll describe me vision, more or less:


Alright. Here are the specifics. When following a path to check a track or when finding transitions, what Cas-Stunts does currently is keeping a database of the characteristics of each tile. One of these characteristics is the connector type in each of the four directions. Connector type 1 is that of paved, dirt and icy roads. Connector type 0 stands for no connector. Connector type 2, for example, means elevated road. A ramp is a tile element that has a type-1 connector on one end and a type-2 connector on the opposite one, the other two connectors being type-0. Banked roads have two connector types: on for right-handed banked road and another for left-handed banked road. The catch is that there always exists a transition (i.e.: a tile with two opposed connectors of different types and the other two being type-0) that has a type-1 connector on one end and any other connector type you want at the opposite end. This means you can create a combined connector very easily. First check if a simple connector exists. If it does, insert it. If it does not, create a simple transition to type-1 followed by a simple transition from type-1 to the new type. This way, it no longer sounds that magical :)
Title: Re: Cas-Stunts track editor
Post by: Duplode on September 29, 2016, 06:54:14 AM
Arrows will not turn, but instead, they will try to continue the road in the absolute direction of the arrow. When you press the arrow in the direction you came from, the last tile will be deleted and the cursor will move to the previous position. If it were not possible to move in the direction you request, nothing will happen. Say you're standing at North-to-South straighway and activate the mode, then hit the right arrow key; a split will be created

...so that the arrow keys always create straights, regardless of context. It does makes sense.

Upon pressing an arrow or a shortcut (such as L), Cas-Stunts will pick one of the tiles such that it properly connects with the previous tile. If there is more than one possibility, the first available one will be inserted immediately and you'll be left at the next position. A key will allow you to switch to alternatives for the previously inserted tile, which will sometimes modify the resulting position, like in the case of the chicane

I like this way of doing it too -- it makes the command set more orthogonal. For corners, would that mean pressing the corner button would insert, say, a right turn, and then the switch button would flip it into a left turn?

You can just hit ESC and the whole path will be cancelled

That is a welcome feature. (I'm now thinking of the times I accidentally wrecked a track with the TAB brush in TrackBlaster :D)
Title: Re: Cas-Stunts track editor
Post by: Cas on September 29, 2016, 07:11:20 AM
Pressing an arrow would create a straightway or turn depending on where you press it. Say you start and go up, so you get a vertical straightway. You continue to press up several times and the straightway gets longer. The keyboard cursor stays not where you just placed a tile, but where you're going to place the next tile. So now you press the right arrow. What happens is a corner from South to East appears where you were standing and now you're standing to the right of the corner. If you continue to press right, you'll get straightways. So the alternating shortcut key would not change the direction of turns, but rather, for example, whether the turn is large or sharp.

Now, saying all this is already complicated, you see. Imagine what it is like to code it! :D
Title: Re: Cas-Stunts track editor
Post by: Cas on October 05, 2016, 09:11:18 AM
New update... almost finishing...

Officially, the name of the editor is changed from Cas-Stunts to Bliss and this version can almost be considered complete!

Bliss 2.4.4 beta
Download this latest version (https://mega.nz/#!wFJWBbzT!CLxBpg8mSmhGrsAOyXEcLkenzS9zYzTO8maicNXZX8Q)

Lots of new features and bug fixes!

Most important features and bug fixes:

I would say the most worked-on area in this update has been keyboard-based editing, but there are many "invisible things" that have been enhanced or fixed. Hope you guys like it. This is likely the last update before the final, stable version. I consider this one already very stable. If you guys find anything that's really important to change or add, this is the best moment to come up with it :)
Title: Re: Cas-Stunts track editor
Post by: dreadnaut on October 06, 2016, 10:26:23 PM
If the tournament is ZakStunts, Cas-Stunts will parse the HTML. If it's any other, it will look for specific text-based configuration files from where it will get the info to do the same thing, so any tournament can implement that "protocol" easily without having to display a particular appearance.

You can also use the current track data from here: http://zak.stunts.hu/track.json
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on October 06, 2016, 11:10:01 PM
Thanks, Dreadnaut!  I didn't know that one. It certainly is a lot simpler than the HTML. Only parsing the paths would be more complicated, but since that is a constant, I wouldn't need to do that part.

Is this file always present and does it always point to the current track?  If you ever make changes to the website (which could break Bliss parsing the HTML), will this file still have the same structure, so I can rely on it instead of the HTML?

If I would ever not be present to update Bliss and you would need to make changes to the site that would break the communication between Bliss and ZakStunts, you can still use "Bliss Tournament Protocol", like it's described in the manual.txt file. Instead of entering zak.stunts.hu for the link (which would result in Bliss trying to parse the HTML, or json, if I update it), enter btp:zak.stunts.hu and it will use BTP like it were any other tournament site.
Title: Re: Bliss / Cas-Stunts track editor
Post by: dreadnaut on October 07, 2016, 10:54:12 AM
Is this file always present and does it always point to the current track?  If you ever make changes to the website (which could break Bliss parsing the HTML), will this file still have the same structure, so I can rely on it instead of the HTML?

You can consider the json schema fixed. Any changes will be backward compatible. The file is always up to date, a similar one was there for USC as well, and is used to show races on http://stunts.hu
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on October 09, 2016, 09:23:40 PM
I'll switch to reading that file instead, then, so that any future HTML updates on the site won't break communication with Bliss :)
Title: Bliss 2.5 - final version
Post by: Cas on December 22, 2016, 03:57:45 AM
Hi, guys. I'm here announcing that we can now consider Bliss to be complete, although some bugs might be detected in the future, that I would have no problem to fix and maybe some feature would become important one day and requested, but other than that, it already does all it has to do. You can download the latest, final version from here:

http://www.dimioca.com/bliss (http://www.dimioca.com/bliss)

I would suggest that you guys download it and keep the zip file and if you can also replicate it to your sites, to have an alternative download source, it would be even better, in case my server would ever fail. Following are some changes you're going to find in this final version:


Thank you all guys for your support on this project and special thanks go to Duplode, for his amazing feedback!
Title: Re: Bliss / Cas-Stunts track editor
Post by: Duplode on December 23, 2016, 04:15:28 AM
Downloaded! I will upload it to Southern Cross in the next few days, possibly tomorrow. Congratulations for the final release  :)
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on May 17, 2017, 03:08:48 AM
My goodness!  Duplode's was the last message in the Stunts Related Programs subforum till now!  And it was in December... Anyway...
Just wanted to tell you guys I've made a few touches to Bliss in the last months and I thought I should by now update the program as it's published. You can download the latest version (Bliss 2.5.2) from here: http://www.dimioca.com/bliss (http://www.dimioca.com/bliss)

It's just a couple of bug fixes and two simple features:
- You can now set a "Stunts directory" and a "Tracks directory" for more comfortable access. If you feel comfortable editing the configuration file, you can also add your own extra directory links there by following the instructions in the manual, but the two I mentioned can also be modified from the Settings menu.
- Although Bliss is a portable project, you can, if you prefer, move the executable to a protected location so that it cannot be written to by other programs (protection from trojans). Bliss will try to find its data files at /home/user/bliss or /home/user/.bliss for GNU/Linux or %appdata%\bliss for Windows or follow the PATH for DOS. Only if not found there, it will try to locate them at the executable directory.
Title: Re: Bliss / Cas-Stunts track editor
Post by: arturbmallmann on May 18, 2017, 11:21:20 PM
Good improvements! :)
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on May 20, 2017, 09:50:46 PM
Thanks. If you see anything acting up, just let me know.
Title: Re: Bliss / Cas-Stunts track editor
Post by: Shoegazing Leo on May 21, 2017, 01:44:59 AM
I like it because is easier to make some dual tracks and design tracks without Dosbox use.
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on November 26, 2017, 06:10:33 AM
Well, I've been into other things really, but when I'm bored, I make some touches to Bliss. As you all know, it's already totally functional since long ago, but I wanted to tell you I've updated a bit. So...

Bliss 2.5.3

New features:

Fixed bugs:

If you haven't updated the last time, for the custom directories option, I really recommend you to do so. It's a lot more comfortable to navigate the filesystem with that.
As always, you can get this update from http://www.dimioca.com/bliss (http://www.dimioca.com/bliss). I would be very thankful if Bliss were included in the Downloads area in ZakStunts.
Title: Re: Bliss / Cas-Stunts track editor
Post by: dreadnaut on November 29, 2017, 11:45:52 PM
I would be very thankful if Bliss were included in the Downloads area in ZakStunts.
Good point, I actually thought it was already there! Well, it will be in a minute :)

Cas, do you prefer just a link to your website, or a link and we keep a copy of the zip?
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on November 30, 2017, 12:15:12 AM
Thanks, Dreadnaut!

Well, while I would like, of course, to have traffic in my website, I reckon that it serves a better purpose for the community to have the ZIP accessible there. Remember in the past, I was off for some time and the website I had at that time was lost, so Duplode had to share his copy of Bliss. I don't intend to abandon my current site or the community, but it's safer if it's uploaded there, I reckon. What do you think?
Title: Re: Bliss / Cas-Stunts track editor
Post by: dreadnaut on November 30, 2017, 12:19:30 AM
I put a link, but I'm also keeping a copy of the zip file for safety :)   I'll probably "upgrade" the download page in the next weeks, so they'll both be available. I think it's nicer to send people to your page because you have more information about the software and source code, and all the rest of the website!
Title: Re: Bliss / Cas-Stunts track editor
Post by: Cas on November 30, 2017, 12:25:37 AM
Yes, that's true. Yeah, I think having both is the best, because people can choose to go to the site and see the latest version and all the details, but if something fails, it is also available right there. You may want to add that Bliss also runs in GNU/Linux, as that's probably not expected.