OPP
 Pixel Joint Forum : Pixel Art : Collaborations/Challenges : OPP
Message Icon Topic: Implemented existing art as demo. (Download!) Post Reply Post New Topic
Author Message
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Topic: Implemented existing art as demo. (Download!)
    Posted: 29 July 2013 at 9:04pm
Hello, all. Jetrel and I were talking a few days ago, and... long story short, I've made a demo!

Mac Build: OPP-0.2.0.app_7_30_13.zip
Windows Build: anura-opp-0.2.0-20130713-win32.zip (Requires vcredist to run.)
Changelog



We're doing this in Anura, which was the engine we developed to run Frogatto.  We should probably explain a bit about it; I apologize for this sounding a tad like a marketing pitch:
    
Anura's a fairly modern engine with full hardware acceleration.  It runs on darned near everything (almost any computers or mobiles), and we've now had at least 6 fully-functional games written in it (at least 2 of which are completely finished).  The important thing is how flexible it is; some of these games are radically different genres - Cube Trains is an iso-3d block-based building game; Frogatto is a side-scrolling platformer.  Both of these worked with no code changes to the engine - all you have to do is edit script files, and you can make a completely different game.
    
A big thing which matters here is that the engine has a bunch of pixel-art specific features in it; we wanted to be able to do a lot of the typical pixel-art tricks you're familiar with from classic games (and emulator features like HQ2x); many of them are implemented in a radically different way, but overall they "emulate" the feel of many scanline effects from classic 16-bit games (parallax, distortion, palette-changes, etc).

I've only added a few things to the game so far, but I've collected the images I could find in the forums and the wiki. I'm sure I've missed stuff or got an old version of something, but if you let me know we'll get it in ASAP!

On to the technical dirt.

If you've downloaded the release from above, you'll find all the images in ~/modules/open_pixel_platformer/images. (Where "~" means "wherever you installed the program".) I haven't organized them very well, so if someone would care to have an organize at them that'd be great! (If you move images around, it would be nice if you could update the paths in the .cfg files by searching for the image file name in ~/modules/open_pixel_platformer/data.) Anyway, how do we want to organize the files? Oh, also, I have no idea who the authors for the works of art are atm, so if you could speak up for posterity that would be great. We'll get everything sorted in the end, but this would make it much easier. I'd like to eventually have a .txt file in each directory specifying exactly which pieces of art were by who.

Image Format and Specifications:
The Anura Engine reads .png images with full alpha channel support. In addition, it has two "magic transparent colours" available, a tan (#6f6d51) for backgrounds and a red (#f9303d) for outlining frames.  If you make any pixel exactly one of those colours, it will be treated as completely transparent.  We give you the option of either approach; both  have their own upsides and downsides, and we ourselves use both in different parts of Frogatto

There aren't many limits on sprite size; spritesheet images must be an even number of pixels wide, and be less than 1024px.  The size of an individual sprite inside such an image, has almost no limits - they absolutely do not need to be a power of two (eg, 64px, 256px, etc).  Spritesheets have a lot of flexibility for organization; individual animations can be laid out horizontally, or vertically, running forwards or backwards (or both).  Animations that are too long to fit in one row can even wrap, like words in a book (though they must have rows of equal length).  Animations must have all frames be the same size, and the same duration; we can chain animations together (i.e. starting a second animation whenever a first one is finished), and this takes care of all cases where we've needed an unusual frame duration, or needed some frames to be bigger than normal.  We have a simple key-point system to make sure animations of differing size line up correctly when switching between them.

If you open the built-in editor with ctrl-e, images will live-reload when you save the file in your editor. This makes it much quicker to see if the animation is "working". You don't have to restart the game and go hunting for the right situation where you can see the animation.

Tiles should be 32x32 pixels across, and the total sheet size should probably not exceed 1024 pixels. It won't run on the iPhone if it is too big.

Code format and specifications:
It's all text files. It's all scriptable. The entire game is completely customizable with nothing but notepad.
And it'll do this neat "live reloading" thing while you do so, so you don't have to keep exiting and restarting the game to test your scripts. The documentation for the languages is up on the Frogatto wiki on github. If you have a question, just leave it on the Frogatto forum or ask us live on IRC. (We're #frogatto on freenode.net. URL: irc://chat.freenode.net/frogatto) We like to help people! It's kind of flattering for us, as creators.

Anyway, I guess the question is what do people think of the engine? Should we go ahead and make a game?


Edited by DDR - 31 July 2013 at 8:21pm
IP IP Logged
Nek
Seaman
Seaman


Joined: 21 April 2012
Online Status: Offline
Posts: 2
Quote Nek Replybullet Posted: 30 July 2013 at 4:27am
Mac build doesn't work for me. Tells something about Frogatto module missing.

I can run it from command line using module parameter: "/Users/Nek/Downloads/OPP.app/Contents/MacOS/Frogatto --module=open_pixel_platformer"
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 30 July 2013 at 9:11am
Doesn't work for me as well: Library not loaded: /usr/lib/ibc++..dylib

I'm on Snow Leopard


Best regards from
M.E.
IP IP Logged
Hapiel
Rear Admiral
Rear Admiral
Avatar

Joined: 09 October 2018
Online Status: Offline
Posts: 3073
Quote Hapiel Replybullet Posted: 30 July 2013 at 9:48am
This sounds super great! Too bad that I (windows) can not run it either!

I will be excited kicking this project back into action when there are people taking on the game challenge!
IP IP Logged
Nek
Seaman
Seaman


Joined: 21 April 2012
Online Status: Offline
Posts: 2
Quote Nek Replybullet Posted: 30 July 2013 at 10:04am
Hmm. There is a possibility I can run it because I've tried to compile Anuro from sources recently and thus have all the dynlibs installed.
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 30 July 2013 at 11:22am
Originally posted by Nek

Mac build doesn't work for me. Tells something about Frogatto module missing.

I can run it from command line using module parameter: "/Users/Nek/Downloads/OPP.app/Contents/MacOS/Frogatto --module=open_pixel_platformer"

Could you try the new download link? It's http://ddr0.github.com/files/release/mac/OPP-0.0.1.app_7_29_13.tar.gz. I wasn't able to test it, since I don't own a mac. What happened was a small configuration file was missing and the engine tried to load the default module. Sorry.

Originally posted by Hapiel

This sounds super great! Too bad that I (windows) can not run it either!

I will be excited kicking this project back into action when there are people taking on the game challenge!

We should have a windows binary today, or in a few days at least.
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 30 July 2013 at 12:11pm
The tar.gz has symbolic linked files in them without the link-source: -> Versions/Current/Resources

So still can't run the demo !

Best regards
M.E.
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 30 July 2013 at 12:31pm
Originally posted by Hapiel

This sounds super great! Too bad that I (windows) can not run it either!

I will be excited kicking this project back into action when there are people taking on the game challenge!

Now you can run it! Windows build, up!
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 30 July 2013 at 12:45pm
Windows: MSVCR110.dll is missing
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 30 July 2013 at 1:21pm
M.E.: Jetrel is looking into your problem on mac. Krista^, one of our engine programmers, says you need to grab http://ddr0.github.io/files/release/win/vcredist_x86_2012.exe. I hope that helps.

I've updated the topic post.


Edited by DDR - 30 July 2013 at 1:21pm
IP IP Logged
Hapiel
Rear Admiral
Rear Admiral
Avatar

Joined: 09 October 2018
Online Status: Offline
Posts: 3073
Quote Hapiel Replybullet Posted: 30 July 2013 at 1:37pm
It works, and it is awesome! :D
Thank you so much!
Best of it, the editor is super easy to access and allows everyone to make changes on the go, whether you are going to script or not!

I will soon take action (2 weeks) to write all contributing artists personally about our plans to get this into a real game and this project will get back into running!!!


Edited by Hapiel - 30 July 2013 at 1:44pm
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 30 July 2013 at 1:47pm
Awesome!  I'm working on getting the temple in atm, so we should have something to play around in by then.
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 30 July 2013 at 9:02pm
Unfortunately I can't run the game.
After downloading the redistributables it starts but at level loading it crashes with these details:

Problem Event Name:     BEX
Application Name:     anura.exe
Application Version:     0.0.0.0
Application Timestamp:     51f81b28
Fault Module Name:     StackHash_0a9e
Fault Module Version:     0.0.0.0
Fault Module Timestamp:     00000000
Exception Offset:     00000000
Exception Code:     c0000005
Exception Data:     00000008
OS Version:     6.1.7600.2.0.0.256.48
Locale ID:     1033
Additional Information 1:     0a9e
Additional Information 2:     0a9e372d3b4ad19135b953a78882e789
Additional Information 3:     0a9e
Additional Information 4:     0a9e372d3b4ad19135b953a78882e789

Best regards from
M.E.
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 30 July 2013 at 11:38pm
Two news items:
1) The temple is now live.
2) I'm really quite terrible at the game Dota 2.

M.E.: I've asked Krista^ about the problem. I'm afraid I myself don't have the foggiest.
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 31 July 2013 at 9:22am
M.E., check the this microsoft page. Scroll down past the official Answer, it's useless. There, anand27apr writes:
right click on my computer
go to properties
click on advanced system settings
under performance, click settings
click the Data Execution Prevention tab, and then click Turn on DEP for all programs and services except those I select.
click Add, browse to the executable file for the program and add it.
You could, perhaps, also try running it as administrator.


Edited by DDR - 31 July 2013 at 9:30am
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 31 July 2013 at 10:47am
Thanks for the tip DDR but sorry to say that it didn't work.

DEP told me that the application couldn't be added.

Running as Administrator and setting compatibility mode went a little further:
..\..\..\anura\src\raster.cpp:251 ASSERT EQ FAILED: glew_status != GLEW_OK: 1=0

I'm on Windows 7 x64
I tried installing the 64 bit 2012 redisit but that gave the dll error again.
De-installed the redists and reinstalled the x86 and the level loading started again but again with the BEX message.

Too bad that this happens and I hope for you that I'm an isolated case.

Can you maybe look into the Mac build where the tar.gz seems to have symbolic links instead of the files required?

I don't care which platform works, as long as one does :)

Best regards from
M.E.
IP IP Logged
Noburo
Commander
Commander
Avatar

Joined: 10 June 2014
Location: United States
Online Status: Offline
Posts: 279
Quote Noburo Replybullet Posted: 31 July 2013 at 11:43am
Holy freakin' excited... The editor is awesome! I know what I'm doing this evening!

ME: I am also running Windows 7 x64 and it runs flawlessly. Do you have IE10 installed? A few months ago MS pushed out an update for it that has caused a lot of issues, including with the stack hash module. Check and see if KB2670838 is installed, and if so, uninstall it. Also remove IE10, it's absolute garbage. Other than that, I'd try updating your video card drivers.

Edited by Noburo - 31 July 2013 at 11:43am
IP IP Logged
M.E.
Commander
Commander
Avatar

Joined: 26 February 2007
Online Status: Offline
Posts: 430
Quote M.E. Replybullet Posted: 31 July 2013 at 12:23pm
Yeah !!! Finally managed to get it to work.
I installed a virtual machine with Windows 7 x64 and installed the x86 redist and the game ran fine!

Unfortunately my baremetal host can't run it even with the tips from Noburo!

WOW very impressive editor and from first glance this engine really looks well! Compliments!

I definitely will be investigating this further!

Best regards from
M.E.

IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 31 July 2013 at 8:29pm
OK, I've added the cave world to the demo. I think I got it remarkably close to the mockup, too.





Let me know if I've broken the release, please. I'm afraid I don't have the OSs to test them on. Thanks!
IP IP Logged
Damian
Commander
Commander
Avatar

Joined: 23 December 2014
Location: United Kingdom
Online Status: Offline
Posts: 439
Quote Damian Replybullet Posted: 31 July 2013 at 11:33pm
Not really digging the brown on grey cave. I might have to do something about it later today.
IP IP Logged
Damian
Commander
Commander
Avatar

Joined: 23 December 2014
Location: United Kingdom
Online Status: Offline
Posts: 439
Quote Damian Replybullet Posted: 02 August 2013 at 4:27pm
DDR, I've tried the latest build and it works great so far. I'm really likeing the room transitions and that the name of the room shows on entering a new room. I'm looking forward to more :).

Edit:
I've removed the image I originally posted. Kinda hijacked the thread.

Edited by Jim16 - 04 August 2013 at 4:41pm
IP IP Logged
guima1901
Seaman
Seaman


Joined: 08 August 2009
Online Status: Offline
Posts: 17
Quote guima1901 Replybullet Posted: 02 August 2013 at 7:14pm
for me when i open the program it stays forever on this scream

Edited by guima1901 - 05 August 2013 at 12:18pm
IP IP Logged
Anarkhya
Seaman
Seaman


Joined: 12 April 2009
Location: France
Online Status: Offline
Posts: 4
Quote Anarkhya Replybullet Posted: 05 August 2013 at 7:26am
Just wondering, the additional windows executable file we need, is it this one ?
https://www.microsoft.com/en-us/download/details.aspx?id=30679

Because I'd rather download from an official location, you know, safety precautions.. 

Edited by Anarkhya - 05 August 2013 at 7:27am
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 06 August 2013 at 8:33pm
guima: I've asked our windows expert, Krista, about the blue screen. It's very strange though -- is there any text in the error logs which are found in stderr.txt?

Anarkhya: That looks like the one, although I can only personally guarantee the one I've linked to.

(edit: updated post with more comments, right err name.)


Edited by DDR - 06 August 2013 at 8:52pm
IP IP Logged
Anarkhya
Seaman
Seaman


Joined: 12 April 2009
Location: France
Online Status: Offline
Posts: 4
Quote Anarkhya Replybullet Posted: 12 August 2013 at 10:15am
Now working fine here on win7 64bits !
I kinda struggled with those redistribuable files until I decide to use the one you uploaded instead of the official one, after a reboot and granted administrator access plus winxp compatibility (dunno which one was strictly required though).

Anyway, big thanks for this tool, really  :)


IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 12 August 2013 at 9:19pm
Such as it was, I'm glad I could help.
IP IP Logged
Jetrel
Midshipman
Midshipman
Avatar

Joined: 18 June 2017
Online Status: Offline
Posts: 10
Quote Jetrel Replybullet Posted: 25 August 2013 at 7:24pm
Originally posted by Anarkhya

Now working fine here on win7 64bits ! I kinda struggled with those redistribuable files until I decide to use the one you uploaded instead of the official one, after a reboot and granted administrator access plus winxp compatibility (dunno which one was strictly required though).Anyway, big thanks for this tool, really :)


Yeah - don't worry - the ones DDR or I provide are official. We are the same people who make the official ones. All these are is beta versions of the next version.

The reason we're posting them is that they contain certain things crucial to doing the OPP stuff - they're almost a year newer than the official builds on our site, and we've done colossal engine improvements since then. A few of these were bits of special code we wrote, specifically to support OPP (like allowing 32x32px tiles).
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 12:18am
This implementation has been updated to work with the latest version of the Anura engine. I hope to get a new version out soon after the new art has been collected and organized into spritesheets.
IP IP Logged
Hapiel
Rear Admiral
Rear Admiral
Avatar

Joined: 09 October 2018
Online Status: Offline
Posts: 3073
Quote Hapiel Replybullet Posted: 09 May 2015 at 3:07am
The jungle spritesheets are reorganised, check the gDrive and your email ;).
Anything else needed?
IP IP Logged
Damian
Commander
Commander
Avatar

Joined: 23 December 2014
Location: United Kingdom
Online Status: Offline
Posts: 439
Quote Damian Replybullet Posted: 09 May 2015 at 8:02am
I'll try and finish up that tree tomorrow and then start cleaning up a few things on the tileset. I also plan on redoing the leaf foreground tiles as well. Good to see you're still working on that engine too btw :)
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 2:05pm
I'm not seeing anything new there... what is the file location?
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 2:10pm
Oh, maybe I'm just being slow... jungle_bottom_grey, jungle_wall_grey, all here. I did discover something new, though... the latest version of my engine is being kind of difficult, and it helps to have all the tiles that should tile on a single image. (Kristas, our engine programmer, said it was really slow to do it any other way, and also called it stupid.) I'll recombine the images, though, since it's kind of my fault. I'd /prefer/ to do it your way, it's way easier to deal with logistically.

edit: uploaded to jungle tiles folder as jungle_tiles_grey.png and jungle_tiles_brown.png


Edited by DDR - 09 May 2015 at 2:39pm
IP IP Logged
Hapiel
Rear Admiral
Rear Admiral
Avatar

Joined: 09 October 2018
Online Status: Offline
Posts: 3073
Quote Hapiel Replybullet Posted: 09 May 2015 at 3:05pm
Hmmm, why is the set also reorganised?
And I guess there must be a way to script that all the mini sets get combined, but stay at the same place?
Also, on the collections you made the tree, water, bridge are still missing, or is it okay for those to be on separate images?
What exactly needs to be on the same image? Every asset used in the same level?
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 4:03pm
short: If a tile is part of a matching set, it needs to go in the same image as the rest of the set now.

long:
Let me start from the beginning. I have been unclear.

In our level editor, when you draw out tiles they get put on a layer according to their type. We can do stuff with these layers, like make them do parallax scrolling or have a shader applied to them. We can also edit each layer independently of any other layer.

It turns out that our engine, when it actually draws the game to screen, draws each layer independently of any other layer. There is a fast, simple case where it can draw one layer from one source image. There is also a slow, complex case where the engine can draw one layer from many source images.

As of last month, the engine stopped supporting the slow, complex case.

So, to get to OPP:
I've got the tiles set up now in a simple auto-tiling system. When you draw tiles you automatically get corner tiles and sides tiles and fill tiles where they ought to be. If you draw a 3x3 square, this means there are nine different tiles that get placed for your one action. (Four corner tiles, four edge tiles, and a center tile.) Each tile that makes up this 3x3 square autotiles with each other tile in the square.

However, all the tiles must be on the same layer for this to work.

And now to be on the same layer they must be in the same image.

I've put all the grey jungle tiles on one image and all the brown jungle tiles on another image, because I don't think they need to autotile with each other. They can still appear in the same level, but grey tiles will always be behind brown tiles. They'll never 'join', so you can't have a 3x3 square with 7 grey jungle tiles and 2 brown jungle tiles. But you can have two 3x3 squares, each one made of brown jungle tiles or out of grey jungle tiles.

Tiles that need to autotile together need to be in the same image. That is, if a tile should join with another tile, it should be in the same image as that tile.

A different example: Say we've got some grassy background tiles, which go behind jungle ground to give it some depth. Since the grass only needs to tile with itself, it can be on another layer. So, it can be in one image and the jungle ground can be in another.

Hope that clears it up, please tell me if anything confusing. I'm a pretty lousy writer.


Edited by DDR - 09 May 2015 at 4:17pm
IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 4:14pm
Oh, to answer your other questions:
I could make a script to combine the mini sets, but it would just glue the images together with plenty of padding. I was hoping that the big compo I had could replace the mini-sets. I also exploded the tiles farther apart so we could add in more tiles later without having to move stuff around. I haven't done any implementation yet, so we can still move stuff around and decide how we want to organize everything.

The tree, water, and bridge are all in sets of their own and will be fine. (The water-column is maybe an edge case, but I'll deal with that later.)
IP IP Logged
Hapiel
Rear Admiral
Rear Admiral
Avatar

Joined: 09 October 2018
Online Status: Offline
Posts: 3073
Quote Hapiel Replybullet Posted: 09 May 2015 at 4:40pm
Yep, I think I understand everything :). Your engine doesn't mind working with a lot of layers? Then I'll keep everything that does not autotile together on separate files.

I'll use the super padded files you made if future tiles pop up. The advantage of a script or something alike would be that I only need to update one set, since I would still like to also package everything tight for other users of the set. But probably there won't be much additions to the jungle set in the near future, and putting a tile in the right spot twice is not that much of an effort, so I guess it will be fine :)

Thanks for all the clarification!

IP IP Logged
DDR
Midshipman
Midshipman
Avatar

Joined: 10 May 2011
Online Status: Offline
Posts: 37
Quote DDR Replybullet Posted: 09 May 2015 at 8:20pm
OK. We can rebuild the super-padded sets from the expanded sets, too, if we want. Zealous crop on gimp already gets it down to 448x419, and then it's just a little copy/paste to get it even more compact... but, and I say this from a programmer's point of view, there's really no reason to compact the spritesheets at all. Computers are insanely powerful these days.


Edited by DDR - 09 May 2015 at 8:21pm
IP IP Logged
Post Reply Post New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum