Vrav's Forum Posts

  • Hey, this is pretty great! Playing it made me swear a lot, in an entertaining argh-I-keep-dying way. The pumpkin in the beginning is kind of confusing though. I think if you slice it you should get a 1up. That much just makes sense.

  • Heya!

    The art is a lot cooler than you seem to think. Sure, it's little rough, but that gives it some serious charm - hand-drawn artwork is always awesome, and it even animates in a cool way.

    I personally admire you a great deal for allowing the user to set their own keys. I use a different keyboard layout than most people, and as a result have a hard time playing games that use WASD and Z and X for everything. So... thankyou very much! And sweet little game.

    The .cap might be big because of the art, though. It told me it couldn't find any of the sound files. But anyway, great overall effort on the game so far. This is more than I've seen for Construct typically, so it makes me really happy.

    I love that your hitpoints are coffee.

  • This is really cool. Are there any online resources you've looked at in producing your code, or is it all original? I only ask because I'd like to do some research on random level generation myself, and like the way yours works.

  • 3D Layering in the Layer Properties fixed it! Thanks a lot UberLou. I really appreciate it, man. Didn't even know those two settings existed, but I guess I didn't really know to look for them.

    Maybe someone should make a page in the documentation for how 3D Objects in Construct work... I'm tempted, but it'd probably be more interesting if someone who knew exactly what the interpreter is doing to create the effect wrote the the documentation.

  • I don't understand the 3D Object as it works presently. I assume I'm either missing some extra data structure (such as brainpower), or it's just broken/incomplete...?

    <img src="http://img713.imageshack.us/img713/2993/65331594.jpg">

    edit: Okay, cool. I can set the three rotational values using events at runtime. But I can't set depth, so everything gets squashed still. How do I get it to read depth as I've set it in the editor, or otherwise set the depth value using an event?...

    edit2: Wow, yeah, okay, I found it. Maybe I should learn how to read. However, it all still looks like this... which is sad because they look fine in the viewport. I wonder what I'm still missing.

    My best guess is that it can't sort properly since I just brought in an obj with tons of objects stacked in front of each other, but that doesn't make much sense - it looks right in the editor.

    <img src="http://img28.imageshack.us/img28/7281/68399323.jpg">

    What it really looks like to me is that the viewer is displaying faces with normals facing one way in the editor, and the other direction when you look at it in runtime. But it also draws geometry that would be "backfacing" if there isn't anything else there. So you get this really mixed result... who knows why. But anyway, the results runtime look weirded out, and are inconsistent with the editor viewport, where stuff looks good.

    I tried flipping the normals on my model, but apparently that data is ignored by Construct because even with a model featuring a correct skull and an inverted skull, they both appeared "correct" in the editor, magically, and then still messed up at runtime. So I'm guessing you've just forced a certain facing, or something. It looks good enough to work with in the editor... if only this were the consistent result.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Even the line before that, which defines packetExtents - using wintab's "context." If there is no context, it can't access the packets. :<

    I'm starting to wonder if there's a different tablet driver for Trust tablets, and then I wonder if it would still work with the wacom drivers installed instead.

  • Yes, quite seriously, my lack of programming is very likely the cause of any errors. It is essentially a minimal packet request and display from the tablet driver using wintab functions. I am not a programmer, which is why I use Construct... however, I can say the issue of 1024 being hardset on my part only pertains to the height scaling of the pretty orange bar. It may, however, be possible that wintab is unable to create a streaming context with your tablet driver because it, in my minimal test, has not been set up to a) gather information about your tablet and b) configure itself properly in respects to your tablet's capabilities.

    This configuration and info gathering I simply have not yet looked into setting up because I don't know what I'm doing in the first place. Rather, I don't know what the code is doing, and therefore do not know how to organize it - it would take a bit of trial and error, be a learning process on my part - and I have been busy with other things. It's possible that 1024-level Wacom tablet compatibility is just the default, unconfigured mode it runs in. I would not yet believe wintab is Wacom-only: isn't this the library GIMP uses? I don't know for sure.

    Sorry to have not stayed caught up on this thread. Here's all I had done. Much of the python scripting within the cap is salvaged nigh verbatim from the first in this list of resources. Perhaps you can try running his test python game to see if it functions with your tablet - there are many measures he has included that I first attempted to include, but eventually cut due to not knowing how to structure it in Construct. Evidence of this is in the vestigial var prevpressure, which is defined but never used. I forgot to delete it, haha.

    (

    Early blind attempt that would cause Construct to crash on the condition of event six.)

    Scripts and .cap:

    http://dl.dropbox.com/u/398143/Files/wi ... essure.zip

    Merge the contained Data folder with the one in your Construct install directory. The .cap should be able to access the wintab libraries from there; you need only have Python 26 installed.

    Information resources used:

    http://www.akeric.com/blog/?p=777

    http://cgkit.sourceforge.net/doc2/wintab.html

    http://www.wacomeng.com/devsupport/pc.html

    In the last link there, there are samples with source code. They seem like they'd be useful for studying the structure of wintab function usage, I have simply not yet gotten into it.

    [quote:i84kat9q]I get an error stating line 12 stating that Wintab couldn't find context followed by recurring errors about line 1 and context not being open.

    This could be several things. Perhaps wintab cannot find the context it accesses in your tablet drivers... or perhaps the first python scripting module simply cannot find the definition of the context class __init__.py defines. Either would cause the subsequent every-tick module to whine about the context not being open, because it was not opened in the first script module.

    In regards to line 12, there is no line 12; I don't know why, but Construct seems to count its script lines from a different angle than they are presented in the script editor, and as such they are often misleading. I checked the scripts and such but they all have open licensing comments through the first twenty or so lines. A better look at what exactly the error pop-up is saying, if it's saying anything more, such as whether it's complaining about an external script, or what, would make it easier to trace.

    As for error-trapping, I don't know, I have never really had any problem with forcing a process to end. The errors that do show are generally informative enough.

  • Oh man... little Ulric got to 1547. Awesome creation, dude!

  • What tablets do you guys own (if any)?

  • Oh man, thank you so much. I'm almost embarrassed that I missed it there, haha.

  • Is it just me, or did global variables disappear? I haven't been around for a few decimals...

  • Hah! I like how you can ride around on the moving pillars. Very interesting setup.

  • "can't draw to the construct window" -> Certainly you can! Here's what I had back in May '09:

    <img src="http://smg.photobucket.com/albums/v325/mwahaha/screenshot/brushwin.png">

    That wasn't even with pressure sensitivity.

    [quote:2mapg3b3]storing external python libraries is something no one has explained (or done at all?) yet.

    It was not very difficult. What newt says about exporting the scripts to exe is correct - but only for scripts. If the scripts in question reference any other files, in my case a compiled .pyd file, you don't want to pack those in the same way as the scripts, because the bundled .py files are read from a zip within the Temp directory at runtime, and the scripts can't seem to reference the contents of that zip.

    At first this had me confused, but as soon as I looked at what it was doing, everything made sense. The test app was functional within Construct, because it could read the libraries the scripts were using from various locations - Construct\Data\Python, where I'd placed them manually, but also from the Python26\Lib\etc directories. Of course, for distribution, you are not going to want to require that the user install Python and a special library just to run your program. So what I did was tossed the extra, non-.py libraries in the exe's directory.

    It seems that simple!

    I've only had one friend try it, though, so if anyone with a tablet wants to help - it's rather featureless, but - here is a 7z and a zip of the test application. They are identical. In reality, people without tablets should be able to test it as well. If it's all bundled correctly, it should not pop up any errors when loading the exe.

    http://dl.dropbox.com/u/398143/Files/PressureTest.7z (1,324 KB)

    http://dl.dropbox.com/u/398143/Files/PressureTest.zip (1,906 KB)

    There is a boost_python-vc90-mt-1_39.dll in there that I don't think is actually being used. It seems to work fine without it at the moment. Wintab uses it for something, presumably - I have simply not accessed many features just yet. Also! Since I have it reading sensitivity, but not delivering any other actual information about the tablet to Construct, this is hardcoded to function properly with tablets that possess 1024 levels of pressure sensitivity alone. If tablets with different sensitivity levels exist, it will probably behave unusually.

    If you are going to bundle libraries and such accessed by your python scripts in your own project, but aren't writing all your imported scripts from scratch (such as wintab, which communicates with tablet drivers), you may need to fiddle with the directory context of the various 'import' calls within the scripts. For example, wintab is stored within cgkit in Python, but I am using it outside of cgkit, and therefore simplified the file organization. I am not really sure how intuitive Python is when it comes to importing resources (where it will look, and how deep) but the error reporting in Construct proved invaluable for rooting out which scripts needed tweaking where.

  • Good to know at least one person is supportive. I don't really understand newt's comment.

    So far I've got pressure sensitivity reading fine, and it even works on other computers (took a while to figure out where to store the libraries, am learning). At the moment I am in my newbish way attempting to pull further packet data from the tablet driver connection, and will likely make a thread in Tutorials about tablet support when the methods become clear.

  • That seems right!

    I got it working. ^^; Thanks.