Building with Ant

Progress reports and musings from the developers on the current gaming tools.

Moderators: dorpond, trevor, Azhrei

smaudet2
Cave Troll
Posts: 70
Joined: Sun Mar 01, 2015 12:57 am

Re: Building with Ant

Post by smaudet2 »

JamzTheMan wrote:What does dice tool offer that countless other choices don't? (honest question)

I roll all real dice so never use em but if I did need one, I think I would just download an android app or an online app, especially one with graphics/3d dice. If I were playing online, I'd want my dice in chat so the VTT I'm using would have it, or slack, or the forum, or what ever else.

I just can't imagine (and I may be totally wrong), but are we getting a lot of downloads still for a java swing based dice roller?
Well, my use case was pretty simple...I don't care to use other dice rollers, and I didn't need MapTool, the VTT tool we were using wouldn't work either because there were multiple 'GM's involved and I needed to make GM rolls they couldn't see (they were in fact a player).

As for the whole 'doesn't integrate bit' - well...chicken and the egg problem. There are some things I'd like to do with DiceTool...atm only I'm going to benefit though. Good first start would be review the PR I have out there.

So, I suppose to answer your question, DiceTool is the *only* DiceTool that is made by the same people that make MapTool, and the only one I know of that you can download and tweak yourself. The 'countless other dice rollers' out there don't offer that capability.

User avatar
JamzTheMan
Great Wyrm
Posts: 1872
Joined: Mon May 10, 2010 12:59 pm
Location: Chicagoland
Contact:

Re: Building with Ant

Post by JamzTheMan »

OK. Makes sense, except not using maptool cause that is just silly! J/K

I guess I assumed if you just needed secret rolls you would just to dice at your desk :)

But hey, while you are FX'n this, if you make it roll some 3D dice, let me know! :)
-Jamz
____________________
Custom MapTool 1.4.x.x Fork: maptool.nerps.net
Custom TokenTool 2.0 Fork: tokentool.nerps.net
More information here: MapTool Nerps! Fork

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: Building with Ant

Post by jfrazierjr »

JamzTheMan wrote:What does dice tool offer that countless other choices don't? (honest question)

I roll all real dice so never use em but if I did need one, I think I would just download an android app or an online app, especially one with graphics/3d dice. If I were playing online, I'd want my dice in chat so the VTT I'm using would have it, or slack, or the forum, or what ever else.

I just can't imagine (and I may be totally wrong), but are we getting a lot of downloads still for a java swing based dice roller?
Well.. first and foremost, it's very light weight.

I use Maptool sometimes when I GM "locally" and other times I don't. It just depends upon how much time I have to prepare. Dicetool fits the need for a 5-10 minute prep time and it's VERY lightweight equivalent to macros takes little time to set up once you are familiar with the syntax. I just don't want to spend the time it takes to actually count out the result values and don't want the occasional addition mistake to come into play. Some people are bad at math, and while I normally am fine with it, there are rare occasions. I honestly hate spending 20-30 seconds adding up large dice pools. To me, Dice are the tool to resolve things, but the game mechanic should sit out of the way, hence computer automation to speed things up and get back to the narrative what effect the result produces in the game world.

Let me give a little example of how/why I would use DiceTool:

Suppose I was a wizard in some game system or another and I had a spell that does:
10d6 + Character Level + INT modifier fire damage
AND
3d6 + Character Level + WIS modifier psychic damage, HOWEVER on this roll, the stat modifier, but not the Character Level) is added to each and every(i,e roll d6 and add WIS 3 times) dice roll.

This spell also has an attach roll of d20+INT

Now, there are several ways to do this in DiceTool, but supposed you want to see EVERYTHING broken down.

I would code this up as
d20:INT;10[d6]:LVL:INT;3[d6:WIS]:LVL
and relabel the button something like Psychic Fire

Basically, the semicolons tell the engine that "this is new" and it changes the color for easier reading automatically.
Spoiler
Image
Some games don't have massive dice pools, but for those which do, this tool is a quick and easy way to implement them and just get your result instead of having to freaking count.

For the record, you could just as easily set that to NOT show the results of each and every roll or only parts(for example only show the break down of the attack roll in case your game does critical hits and knowing it rolled exactly 20 on the dice was important).

Add to that fact that I COULD just as easily create macros in javascript to provide for special processing(such as the critical mentioned above).


Of course, Maptool can do all of this, but some of it requires more work(and some it does better) and there is an overhead to Maptool. My eventual goal would be to re-write DiceTool and eventually make the interface in JFX AND get it ported to android, but the port to android stuff is STILL fairly garbage even 4 years later unfortunately.


Also, I could be wrong(and if I am, please feel free to correct me), but I think that DiceTool was the first product created and used by the original team as Giliath ended up making it for his personal use during gaming sessions. MapTool was created as a personal project by Trevor, but he was never a die hard RPG gamer and I believe he did MapTool as a creative outlet until his personal commitments ended up requiring him to step away from a "hobby".
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

smaudet2
Cave Troll
Posts: 70
Joined: Sun Mar 01, 2015 12:57 am

Re: Building with Ant

Post by smaudet2 »

jfrazierjr wrote:the port to android stuff is STILL fairly garbage even 4 years later unfortunately.
Do you mean that JavaFX stuff doesn't work well period on Android?

I think any framework is going to have that issue on Android, whether you use Cordova, or Titanium, or try to target it with JavaFX or something...also unless you split it up any port of MapTool as a whole to mobile is going to be garbage, unless you only run on large screen devices...and even then. There is a lot of text involved with role playing, typing on mobile still sucks.

I'd actually either go native or go the whole 9 yards and go for a full HTML re-write, do it in Titanium...none of this in-the-middle stuff if your goal with JavaFX was just to get it to run on mobile.

...also, if your hope was that someday JavaFX would get onto Apple devices - ain't gonna happen, not until Apple loses significant market share to Android (doens't look likely in near future) to the extent that they decided to start accommodating people again. Apple likes its walled garden, and so do the cash-driven iOS developers...its profitable to do things wrong.

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: Building with Ant

Post by jfrazierjr »

smaudet2 wrote:
jfrazierjr wrote:the port to android stuff is STILL fairly garbage even 4 years later unfortunately.
Do you mean that JavaFX stuff doesn't work well period on Android?

I think any framework is going to have that issue on Android, whether you use Cordova, or Titanium, or try to target it with JavaFX or something...also unless you split it up any port of MapTool as a whole to mobile is going to be garbage, unless you only run on large screen devices...and even then. There is a lot of text involved with role playing, typing on mobile still sucks.

I'd actually either go native or go the whole 9 yards and go for a full HTML re-write, do it in Titanium...none of this in-the-middle stuff if your goal with JavaFX was just to get it to run on mobile.

...also, if your hope was that someday JavaFX would get onto Apple devices - ain't gonna happen, not until Apple loses significant market share to Android (doens't look likely in near future) to the extent that they decided to start accommodating people again. Apple likes its walled garden, and so do the cash-driven iOS developers...its profitable to do things wrong.
No, you can get JavaFX to mostly work on android depending on the controls used. The issue is the PROCESS which is still quick darn convoluted(I have not done, only tried to understand from reading).


Don't care about IOS, so that's not an issue.
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

smaudet2
Cave Troll
Posts: 70
Joined: Sun Mar 01, 2015 12:57 am

Re: Building with Ant

Post by smaudet2 »

jfrazierjr wrote:the PROCESS which is still quick darn convoluted(I have not done, only tried to understand from reading).
Challenge. Accepted.

Lol.

It can't be as hard as building a graphics driver or the linux kernel. I've tussled with some ugly builds before (probably doing some naive builds - try to get perl on mingw32 to compile against Qt4 on Windows 7 with the free toolchain sometime if you want a challenge).

smaudet2
Cave Troll
Posts: 70
Joined: Sun Mar 01, 2015 12:57 am

Re: Building with Ant

Post by smaudet2 »

jfrazierjr wrote:
smaudet2 wrote:
JamzTheMan wrote:There are the other "tools" but I'm not sure how much the others get used. TokenTool is still popular but the others haven't had active development in years...

I proposed that we combined rplib into MapTool repo as a sub project and roll most of the tokentool functionality into MapTool (as it would be nice to change/edit tokens on the fly inside MapTool). But I'm not the owner of the repo/project, just a contributor that customizes MT for my own use and submits those changes back to the powers to be. So these are just my thoughts.

And FYI, just request a dev-branch for TokenTool if you want. Or submit to master, it doesn't matter as much. The current changes I have in progress for TT is a complete rewrite anyway so not worrying about merging down the line.
[s]Are you able to see the PR?[/s]

[s]DiceTool, not TokenTool (I actually recently used it while GMing). You speak as if you can't see it, why I ask...[/s]

Nvm I realized what you meant, sorry! It doesn't appear you have strike-through.

There are several features I wanted to add to it.

I'm also a bit of the opposite mind - small tools are easier to understand and grok than large tools, esp. if they share common syntax etc. You can spend a bunch of time trying to make the MapTool program easier to use for newcomers...or you can cut the cruft and launch some basic tools. I am not going to launch the whole of MapTool and dig through the many menus, configure them to show me mostly just the dice, if all I want to use is DiceTool (I may want to use it eventually but for now it fits my needs fairly well).
I had a plan to rebuild Dicetool a few years ago. I got started and had about 1/3rd of the back end coding changes done on top of the new Parser instead of the existing JEP math engine, but life puked on me and I stopped playing RPG's for 3-4 years. I had also planned to port the UI to JavaFX, but never got beyond some initial trial mock ups of the main window.

My main goal and one of the things I worked with Craig on (who re-wrote the parser) is to have each and every role returned by the parser and let the calling application deal with the formatting and possible accumulation of sums IF NEEDED(the parser still does this, but it also returns each step in the process so that you the originating application can show those steps in detail if you so choose. The origirinal parser took an expression and returned a string (or int, I don't remember). The new one returns a ResultSet object(or something like it) which contains a field to hold the same value as the original parser would as well as an hashmap of each sub-expression. or at least that was my ideas. This could also allow for named groups of evaluations(similar to how regex groups can be named) for output to the DiceTool "row" along with the evaluated value.

At least that was the plan. I hope to get back to this some day.
So...I'm not sure if anybody has seen this - is there somebody I should go bug to get it considered?

https://github.com/RPTools/dicetool/pull/1

There is no develop branch for dicetool, so there's nothing to merge against but master...and there was no code in this repository before I forked it, plunked the old code into a new-style gradle project. I'd appreciate it if somebody would at least reject it, with a reason like "oh, please this needs to be written in JavaFX".

I like your idea (I think) jfrazierjr, although I'm not sure I fully understand it yet. Now that I've got the parsertool written in JavaFX, I think I can get the DiceTool ported to JavaFX fairly quickly (I'm learning lots of good stuff about JavaFX with ParserTool).

There is also *another* Pull Request here:

https://github.com/RPTools/tokentool/pull/6

Which I will get to dealing with. Just being clear there are two things here.

Post Reply

Return to “Developer Notes”