Virtual Mat

As already mentioned on on other forum, I’m working on Virtual Mat project. Idea is to provide online platform for playing miniature-based Pen&Paper RPG games. Main focus is on implementing battlemap/table part of the equation, not so much the ruleset/game rules, as assumption is that it should be still a normal RPG game with game master speaking with players over some kind of Skype/OoVoo/IM/whatever.



Plans are very big, but I have just started the project, so not much is done yet. I’ll be updating this page to give the status of the project and put some demo videos (and later, source code, as I plan it to be fully open source). Unfortunately, I might have no much time over period of next two weeks for actual development, so expect more updates in January 2011.



For now, some movies:



Very first test of nwn loader with models walking around

‘Forcefield’ selection marker effect and death+taunt animations

Dice rolling - I’m looking for somebody who can model d10 in wings3d :wink:

1 Like

It looks like a very fun game so far :slight_smile:

There’s even dice physics!

I don’t think you’re far from making this project a reality

The Dice-feature was simple yet cool :slight_smile:

Aha! Now the “weird” ground texture in your previous videos suddenly makes perfect sense. Here I was thinking it was some NWN 3D scene conversion gone wrong, crammed onto a 2D plane…, I can be so stupid sometimes.



Well, this is a very intriguing concept! I hope we’ll be successful at extending this site to the point that it can help foster projects with great potential for collaboration such as yours.

I really love this, aside from looking like a great game, the virtual mat has alot of interesting possibility’s

Great work! It already looks awesome :slight_smile:

Coming back from sabbatical. Not much development done, but I have made the source code available (http://www.virtual-mat.net). Not very usable at this stage, as it requires some resources which are not in svn, but I hope to make it buildable/runnable soon.



I have put another video on the youtube

http://youtu.be/6nwAJY3jIEc?hd=1



This time it is public and I have made announcement on wizards/D&D messages boards - let's see if it generates some interest.
6 Likes

Awesome!

wow , the teaser looks sooooo good !



Definitely a worth playing game for me since I’m “officially” addicted with board game :p. Anyway , curious about how can you determine the position of the cursor to move the player from one place to other … I guess a cell is not a separated cube caused they all have the same texture . So is therer a “calculation from 3d position → 2d position” , if you understand what I means?

Anyway , curious about how can you determine the position of the cursor to move the player from one place to other ... I guess a cell is not a separated cube caused they all have the same texture . So is therer a "calculation from 3d position -> 2d position" , if you understand what I means?


As 'square' is most basic unit for such kind of games, everything is based around that and every square has x/z size of exactly one unit. I do a ray cast, find collision point with map geometry and then just take integer part of x and z coordinates of collision point... It works even if part of the map is raised - y position is changing, but x/z stays the same. Exact code is

[java]
public static SquareCoord getCoordAtCollisionPoint(Vector3f pt) {
int a = (int) (pt.x + 0.5f);
int b = (int) (pt.z + 0.5f);
return new SquareCoord(a, b);
}
[/java]

Simple, isn't it ? ;)
2 Likes

Ahh, get it … It’s really simple … but hey, with such a simple 2d like x and y position , more difficulties will raise … For example, you can see in some old 2d RPG, they have a 2d-map and tile with grass, wall or anything , then they have a depth-tile for determine over or underground. Back to your game, I guess you have 2d-map-like so more works to pay for implementing something like walk across or walk under a bridge … <= It’s why nav-mesh is exist for in 3d game …



Then, my question is :" Just 2d position is enough for such a game like this ?"

First important point is that main aim for the application is to emulate real battle mat for fantasy rpg games. This requirement is inherently about flat, 2d, non-overlapping areas.



Now, given that computer gives some more possibilities than real mat, there are certain low-hanging fruits (like visualising basic height), which are simple to implement. More complicated stuff already goes outside of basic use case.



Said that, there is nothing really stopping from making bridges using the same logic. As every square of the bridge will be at specific heigh (heights are also discrete), it would be enough to do similar to-int computation for y coordinate for colission point. Real problem comes with textures - available map images are inherently 2d, even if they represent 3d environment. If the bridge is drawn there, area under the bridge is not. Also target selection for effects (game specific) becomes more difficult with 3rd dimension…

1 Like

Even nicer with the explanation!

Coll alwyas wanted to do something like this myself ^^ since im D&d addicted Xd

Btw, guys from maptool community asked if it is possible to have 2d image tokens added. Here are two proof-of-concept screenshots

https://lh3.googleusercontent.com/_s0cr18I-7ns/TcmYLDmp3jI/AAAAAAAAACE/WYw0Y1ylGgg/s1024/VmatTokens.jpg



https://lh6.googleusercontent.com/_s0cr18I-7ns/TcnGrVs3T1I/AAAAAAAAACI/VIvR8iYJRqg/s1024/silhuette.jpg

1 Like

ok…I wanna play this right now

Awesome, really. When you are confident enough we should add some screens of your app on the jmonkeyengine.com showcase page. If you are interested, some 1280x720 screens of your app would be nice.

I have created small program for designing dice sets. You can get the details at

http://blog.virtual-mat.net/2011/06/dice-design-editor.html



I was thinking about making it a netbeans plugin, but as it is supposed to be used by non-jme people, I went standalone program route. Sorry for not having webstart version yet, I’m working on that.

2 Likes