Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
magicalblender
Sep 29, 2007
Randomly generated fractals!


Also in animated form:
http://www.youtube.com/watch?v=3LYuN8m6tKU

Adbot
ADBOT LOVES YOU

Wulfeh
Dec 1, 2005

The mmo worth playing: DAoC
Been working on a mood tracking journal web application. Just wanted something simple for myself to use that had some graphs and stats. The other stuff out there just didn't fit exactly what I wanted.

http://www.emovolution.com


Wulfeh fucked around with this message at 17:38 on Nov 12, 2010

crab avatar
Mar 15, 2006

iŧ Kë3Ł, cħ gøÐ i- <Ecl8

Wulfeh posted:

Been working on a mood tracking journal web application. Just wanted something simple for myself to use that had some graphs and stats. The other stuff out there just didn't fit exactly what I wanted.

http://www.emovolution.com


Registered because I loving love graphs.

e: I think it would make sense for the parameters to be boolean instead of on a scale. At least I know at any certain point in time I'm either [happy|energetic|confident|at peace|hopeful], or not.

e2: Sure, I could spend time and think about how much I'm happy that I ate this delicious apple or and much it differs from my happiness about the promotion at work, but that's effort. I think more people would be inclined to make a habit out of keeping a journal if they weren't faced with decisions like that.

e3: Also, on the Edit Profile page, you need to define the scale of the Extroversion setting.

Great job by the way, this could be going places.

e4: Hahah of course I realize stats on boolean paramteres aren't going to be really interesting, but you could derive some kind of overall score based on the combination or some such. Or, have it each be represented as a color and display the mix of colors on a linear time scale. I'm sure you could think of something cool.

crab avatar fucked around with this message at 18:31 on Nov 12, 2010

Wulfeh
Dec 1, 2005

The mmo worth playing: DAoC

jegHegy posted:

Registered because I loving love graphs.
Hey me too!!

jegHegy posted:

e: I think it would make sense for the parameters to be boolean instead of on a scale. At least I know at any certain point in time I'm either [happy|energetic|confident|at peace|hopeful], or not.

jegHegy posted:

e4: Hahah of course I realize stats on boolean paramteres aren't going to be really interesting, but you could derive some kind of overall score based on the combination or some such. Or, have it each be represented as a color and display the mix of colors on a linear time scale. I'm sure you could think of something cool.

Yea, we are kind of just in the messing around phase at the moment, seeing how we want to do things. We have it setup so people can eventually create their own moods that they want to use rather than the default ones we specified.

Maybe we can do it so you don't have to fill in a mood if you don't want to.

I still like the sliders :)

jegHegy posted:

e2: Sure, I could spend time and think about how much I'm happy that I ate this delicious apple or and much it differs from my happiness about the promotion at work, but that's effort. I think more people would be inclined to make a habit out of keeping a journal if they weren't faced with decisions like that.

Yea trying to avoid putting effort into this, I want to plug, chug, and get on with my life. Not spend hours figuring out why I am bi-polar with depression, and have 5 different personalities.

jegHegy posted:

e3: Also, on the Edit Profile page, you need to define the scale of the Extroversion setting.

Will do!

jegHegy posted:

Great job by the way, this could be going places.

I wish, haha. Honestly just did this for myself and for fun with a friend.


Also if you want to see what a filled out profile looks like, check out my public link http://www.emovolution.com/u/rilt/

crab avatar
Mar 15, 2006

iŧ Kë3Ł, cħ gøÐ i- <Ecl8

Wulfeh posted:

I wish, haha. Honestly just did this for myself and for fun with a friend.
Think of the possibilities. Directly marketing Viagra to people who have a low average for the Confidence parameter on the "erection" tag.

I bet advertisers would KILL for a list of people's problems. Add a $19.90 yearly fee for users to be able to opt-out from getting stats forwarded to advertisers and you're golden. :haw:

e: I want 30%.

crab avatar fucked around with this message at 19:00 on Nov 12, 2010

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Working on a visualization framework for AI algorithms, so I'm starting with an implementation of a modular Chess domain:



Ugh, my king sprite sucks.

Bob Morales
Aug 18, 2006


Just wear the fucking mask, Bob

I don't care how many people I probably infected with COVID-19 while refusing to wear a mask, my comfort is far more important than the health and safety of everyone around me!

Internet Janitor posted:

Working on a visualization framework for AI algorithms, so I'm starting with an implementation of a modular Chess domain:



Ugh, my king sprite sucks.

Why do they king and queen come down one more row of pixels than the others?

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Bob Morales: I think my intention was to make them taller than the other pieces, but it ultimately looks more like a mistake, hunh?

Doh004
Apr 22, 2007

Mmmmm Donuts...

Internet Janitor posted:

Working on a visualization framework for AI algorithms, so I'm starting with an implementation of a modular Chess domain:



Ugh, my king sprite sucks.

I know this will be very Goony of me, but your King looks like a :butt:...

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Alright, do these look a little less ridiculous?

posting smiling
Jun 22, 2008
I like them :)

Xerol
Jan 13, 2007


These ended up out of order, gently caress it.


:10bux:



Download current version:


Still to do:
-Major pain-in-the-rear end redo of all text labels, since I started on this in 2006 the text rendering is all over the place and I'd like to just get it down to a system that's easy to call. Hence many missing/misplaced/missized text labels all over the place. Time attack modes are mostly the way I want them to be.
-More work on powerups/powerdowns and ship upgrades.
-More ships
-Better menu system
-Implement the drat controls screen
-Online high score tracking
-Clean up hud/minimap
-Add more visual effects
-Vs CPU modes soon, multiplayer eventually
-Probably get rid of score modes

Notes if you want to play it:
~ key expands the tube, Q gives a boost. Both require the power meter to be above a certain point, you can use the bubbler during a boost but there's no visual indication of that. That's going to be majorly improved when I overhaul the HUD. S brakes, but it's not very effective for now. The yellow line just tells you which way the tube is going after a certain distance ahead of you, so only use it as a guideline.

edit: Video
https://www.youtube.com/watch?v=13Nu9t7yvNc

Xerol fucked around with this message at 15:25 on Nov 13, 2010

Jewel
May 2, 2009

Roflex posted:

These ended up out of order, gently caress it.
Download current version:


From the pictures, reminds me of this old net-yaroze game:
https://www.youtube.com/watch?v=WgKj08Ro_Y8

Surface
May 5, 2007
<3 boomstick

jegHegy posted:

Think of the possibilities. Directly marketing Viagra to people who have a low average for the Confidence parameter on the "erection" tag.

I bet advertisers would KILL for a list of people's problems. Add a $19.90 yearly fee for users to be able to opt-out from getting stats forwarded to advertisers and you're golden. :haw:

e: I want 30%.

This

Edit: Seriously, look at the revenue model Mint.com uses. They must make bank because they serve extremely targeted ads. Don't sell yourself or ideas short.

Surface fucked around with this message at 22:15 on Nov 15, 2010

monsterland
Nov 11, 2003

Ahem.


Click here for the full 1280x720 image.


Epic trailer.

Jewel
May 2, 2009


Wow, that looks :krad:

I love how ascii games pay attention to detail (DF, Nethack, etc) compared to current-gen games, where graphics is the main focus.

That Turkey Story
Mar 30, 2003

Okay, only a screenshot of code but it's cool if you're into generic programming. Over the past month or so I've been working on a couple of crazy preprocessor and template metaprogrammed libraries for generic programming and for automatically deducing function return types in C++. With them you can write concepts and concept maps, including auto concept maps, perform concept checking similar to BCCL, and even do concept-based overloading of function templates -- no more having to explicitly do tag-dispatching to simulate it in C++! You have to use very magical-looking macros but the end result is more concise code with less boiler-plate when, for instance, dispatching to different overloads based on which concept refinements certain arguments model. The example shows something akin to std::advance.


Click here for the full 1015x1172 image.

bobua
Mar 23, 2003
I'd trade it all for just a little more.

That Turkey Story posted:

Okay, only a screenshot of code but it's cool if you're into generic programming. Over the past month or so I've been working on a couple of crazy preprocessor and template metaprogrammed libraries for generic programming and for automatically deducing function return types in C++. With them you can write concepts and concept maps, including auto concept maps, perform concept checking similar to BCCL, and even do concept-based overloading of function templates -- no more having to explicitly do tag-dispatching to simulate it in C++! You have to use very magical-looking macros but the end result is more concise code with less boiler-plate when, for instance, dispatching to different overloads based on which concept refinements certain arguments model. The example shows something akin to std::advance.

[tg]https://wi.somethingawful.com/1c/1cbf4e90279f46d7eafef23a3809dcbafcbf24dd.png[/timg]
Click here for the full 1015x1172 image.


I don't understand a word of this, but I'd high five you if I could.

ColdPie
Jun 9, 2006

That Turkey Story posted:

Okay, only a screenshot of code but it's cool if you're into generic programming. Over the past month or so I've been working on a couple of crazy preprocessor and template metaprogrammed libraries for generic programming and for automatically deducing function return types in C++. With them you can write concepts and concept maps, including auto concept maps, perform concept checking similar to BCCL, and even do concept-based overloading of function templates -- no more having to explicitly do tag-dispatching to simulate it in C++! You have to use very magical-looking macros but the end result is more concise code with less boiler-plate when, for instance, dispatching to different overloads based on which concept refinements certain arguments model. The example shows something akin to std::advance.

You used a bunch of big words, but to summarize, is this at all similar to the Concepts feature that didn't make it into C++0x? If so, awesome. If not, can you give an example of where your library would come in useful?

That Turkey Story
Mar 30, 2003

ColdPie posted:

You used a bunch of big words, but to summarize, is this at all similar to the Concepts feature that didn't make it into C++0x?

Yes, it is that (or tries to be an extremely close approximation). Since we likely won't see direct language support for a long time as it's had to be cut from C++0x, and given how long standardization takes, a library is the best that can be done while still being portable between many compilers. At this point in time only GCC has all of the C++0x features necessary to make this library usable.

For an example concept definition, let's say you want to specify a concept that represents the base abstraction of an Iterator (the requirements are based on the requirements in the C++0x working draft at 24.2.2, page 816). With my library you'd use the following syntax, though I already provide this definition in a header you can include:

code:
BOOST_GENERIC_CONCEPT
( Iterator, ( X )
, ( using ( (CopyAssignable)( X ) )( (CopyConstructible)( X ) )
          ( (Destructible)( X ) )( (Swappable)( X ) )
  )
, ( if typedef ( std::iterator_traits< X >::difference_type )
               ( std::iterator_traits< X >::value_type )
               ( std::iterator_traits< X >::iterator_category )
               ( std::iterator_traits< X >::reference )
               ( std::iterator_traits< X >::pointer )
  )
, ( if ( is_signed< typename std::iterator_traits< X >::difference_type > )
       ( is_same< decltype( *std::declval< X >() )
                , typename std::iterator_traits< X >::reference
                >
       )
       ( is_same< decltype( ++(std::declval< X& >() )), X& > )
  )
)
Going through line-by-line, The first parameter specifies the name of the concept, "Iterator". The second parameter is a parameter list for the concept -- here we have 1 parameter, the type we wish to check if it's an iterator. We call this parameter X. I currently support concepts with any finite number of parameters.

The remaining parameters are optional to the macro and can even appear in any order (this is one reason why the libraries are so big -- I simulate named parameter passing in macros).

The "using" parameter is how you specify concept refinement. An Iterator is a refinement of CopyAssignable, CopyConstructible, Destructible, and Swappable (all of which I have defined in other files), meaning that it has the requirements of all of them combined and also specifies a relationship between them that may be used for, for instance, concept-based dispatch. As an example of that, if you have two simulated function template overloads using my Auto_Function library, one overload for "CopyConstructible" models and another for "Iterator", the Iterator one would be picked if you passed in an std::vector< int >::iterator since it would be a better match -- most importantly, it is NOT an ambiguous call even though it is both CopyConstructible and an Iterator. For that example there isn't much reason to write overloads like that, but for algorithms such as std::advance this is extremely important as you have to dispatch to different implementations inside of std::advance based on which kind of iterator your parameter models in order for it to be linear for InputIterators and constant time for RandomAccessIterators.

The "if typedef" parameter specifies that the parameters specified must exist and must be types. Here we are checking that it has the appropriate iterator_traits defined, as required by the standard.

The "if" parameter specifies that those conditions must hold true. First we check that difference_type is a signed type. Then we verify that dereferencing and prefix operator++ are defined and each have the correct return type.

The above is currently how I have Iterator implemented, however, it will get even somewhat simpler very soon. Right now I'm creating "for" and "for typedef" parameter types that let you specify names for commonly used typedefs and objects. This means that you wouldn't have to fully specify things like typename iterator_traits< X >::difference_type every single time you use them, and you wouldn't have to use std::declval at all. This makes the concept definitions more concise and also makes it possible for them to look very similar to the tables in the standard -- even using the same names for given objects and types.

For an example of how RandomAccessIterator (C++0x working draft reference 24.2.7, page 820) would look once I finish implementing "for" and "for typedef". I encourage you to compare the table in the working draft with the following code. The single letter names are used because they are what are used in the standard:

code:
BOOST_GENERIC_CONCEPT
( RandomAccessIterator, ( X )
, ( using ( (BidirectionalIterator)( X ) ) )
, ( for typedef ( (std::iterator_traits< X >) traits )
                ( (traits::difference_type) difference_type )
                ( (traits::reference) reference )
  )
, ( for ( (X) r, a, b )
        ( (difference_type) n )
  )
, ( if ( is_same< decltype( r += n ), X& > )
       ( is_same< decltype( a + n ), X > )
       ( is_same< decltype( n + a ), X > )
       ( is_same< decltype( r -= n ), X& > )
       ( is_same< decltype( a - n ), X > )
       ( is_same< decltype( b - a ), difference_type > )
       ( is_convertible< decltype( a[n] ), reference > )
       ( is_convertible< decltype( a < b ), bool > )
       ( is_convertible< decltype( a > b ), bool > )
       ( is_convertible< decltype( a >= b ), bool > )
       ( is_convertible< decltype( a <= b ), bool > )
  )
)
The above should be very self-documenting and corresponds directly to the standard. At the moment, I have RandomAccessIterator implemented using std::declval, which is fine, but much less concise than what you see above. I won't post the code unless someone really wants to see it, but needless to say it's hairy. All of those "a", "b", "r" and "n" are std::declval calls, "difference_type" and "reference" are always referenced via iterator_traits, and "n" also has to refer to the difference_type via iterator_traits to pass it to std::declval. It's ugly, but works.

The concepts I've shown don't declare associated types or functions since there's no such thing as them with respect to the standard in the concept map sense (as concept maps in the standard don't exist other than "sort of" via traits classes). Of course, direct associated types and functions will be supported eventually and will be able to be mapped to, but I want to be able to support all of the concepts in the standard first. It's also a much harder facility to implement in macros, mostly do to me having to come up with a textual representation to be able to parse and translate with the C++ preprocessor.

Now how do you write concept maps? Since I don't yet support associated functions and types, they have very sparse definitions. The following is an "auto" concept map (similar to auto concepts that would have been in C++0x). It specifies that all types are automatically considered RandomAccessIterators if they meet the requirements specified in the concept definition. Right now, you have to provide a name for the concept map, but I may be able to remove that. Either way, it will likely be optional since I can use it to provide better error reporting.

code:
BOOST_GENERIC_AUTO_CONCEPT_MAP
( ( (class) T )
, auto_random_access_iterator_map
, ( boost::generic::std_concept::RandomAccessIterator ), ( T )
)
This is just an example though it is what I currently do in test code. Iterators should not be auto for various reasons. The big show-stopper here for why they literally can't be auto is that iterator_traits has a default definition that looks for nested types. Therefore, if you ever were to check which concepts a type that did not have those nested types modeled (for instance, "int"), you would get an error during the auto concept check specified above since the instantiation of the default definition of iterator_traits would not be valid for that type and SFINAE can be of no help for such a situtation.

The screenshot linked in my other post shows how you can use the concepts when writing something like std::advance. You may be able to figure out what it's doing by reading it, but I can explain it if necessary.

That Turkey Story fucked around with this message at 23:17 on Nov 30, 2010

That Turkey Story
Mar 30, 2003

I forgot one more big plus. Improved error reporting. When you write templates you generally expect your parameter types to models of particular concepts (I.E. std::sort requires random access iterators and if you provide something else you'd get a gross kaboom). The Boost Concept Check library provides some help in this case, but my library should be able to go one step further, though admittedly I haven't gotten to that step yet. Because of the nature of the concept definitions as macros and because I do all of my concept checking via SFINAE as opposed to compiler errors, I am able to provide exact error messages as to what a user did wrong.

For instance:

code:
BOOST_GENERIC_ASSERT_CONCEPT_IS_MODELED_BY( (RandomAccessIterator), std::list< int >::iterator )
would be able to give a clean error via a static_assert that says something along the lines of:

RandomAccessIterator is not modeled by ( std::list< int >::iterator )

Further, for auto concept maps, I could even give a message that says exactly why it does not model that concept (again, Iterators shouldn't have fully auto concept maps, I'm just using them for the sake of example):

code:
BOOST_GENERIC_DETAILED_ASSERT_CONCEPT_IS_MODELED_BY( (RandomAccessIterator), std::list< int >::iterator )
The above could, in theory, produce an error message such as the following:

RandomAccessIterator is not modeled because the arguments do not satisfy the condition in auto_random_access_iterator_map ( if ( is_same< decltype( r += n ), X& > ) )

After I implement "for" and "for" typedef, the above types of error reporting are only a couple steps down on my list of features to implement next.

That Turkey Story fucked around with this message at 00:33 on Nov 30, 2010

Blue Footed Booby
Oct 4, 2006

got those happy feet

Tw1tchy posted:

Wow, that looks :krad:

I love how ascii games pay attention to detail (DF, Nethack, etc) compared to current-gen games, where graphics is the main focus.

It's the case because the overall gameplay style of Nethack, etc is extremely, extremely niche. Most gamers don't want that kind of detail, and so devs with the money to do real graphics don't try.

It drives me nuts because roguelike devs can be really dogmatic, faithfully reproducing control schemes that verged on asinine in the 80s, utterly failing to use visual cues for important stuff (like getting poisoned or having your gear damaged), and so on. When someone suggests encorporating roguelike elements into a game that isn't a dungeon crawl with perma death there's always someone to act like it's blasphemy. Urggjashdasda I get angry about videa games :unsmigghh:

It makes me happy when I see games that use text as a conscious design choice, as Monsterland seems to, and not just because art is hard or for street cred.

weldon
Dec 22, 2006
I've been working on a Windows 7 Phone app for SabNZBd to learn C#/Silverlight. It's my first real application to make, but I figure I should get some sort of practical experience before I leave school.
I've attached an old picture, but you can see an up-to-date video here:

http://www.youtube.com/watch?v=VYJpHDeQCyo

Only registered members can see post attachments!

monsterland
Nov 11, 2003

Blue Footed Booby posted:

It makes me happy when I see games that use text as a conscious design choice, as Monsterland seems to, and not just because art is hard or for street cred.

Thanks, Blue Footed Booby and Tw1tchy. I tried to make Monsterland intuitive. When you run low on health, your "P" changes color and starts "bleeding". When in tank, it starts to "smoke" before blowing up.

Combat is realtime, WASD moves, numpad shoots in 8 directions. There are a few items, like axes (to make boats, and for instant melee wins) and boats to get over water. And boots to get over toxic swamp. And I'm working on torch. And possibly reintroduction of gold.

It used to run in real textmode, but Windows Vista+ disabled that ability in the OS, so now it uses emulation via OpenGL.

Mustach
Mar 2, 2003

In this long line, there's been some real strange genes. You've got 'em all, with some extras thrown in.

That Turkey Story posted:

For an example of how RandomAccessIterator would look…
I was expecting a hideous macro mess, but this is very readable. Awesome work!

ynohtna
Feb 16, 2007

backwoods compatible
Illegal Hen

monsterland posted:

Combat is realtime, WASD moves, numpad shoots in 8 directions.
Can you please remember to implement an alternate set of shooting keys for us laptop-jockeys who don't have numpads?

That Turkey Story
Mar 30, 2003

Mustach posted:

I was expecting a hideous macro mess, but this is very readable. Awesome work!

Thanks. I've put a lot more time than I originally had expected I would into making it usable and to have it look as readable as possible. During development I've gotten more intimate with preprocessor metaprogramming and came up with more strange preprocessor and template hacks than I've ever wanted to. For instance, each of those "if" parameters in the first example can actually be either a valid mpl integral constant type or a bool value. A user may provide either or and mix and match them in the same invocation. The way I do it is I rely on the fact that

bool ( something )

is a function type that returns bool and takes a "something" when "something" is a type, whereas it is a cast to a bool when "something" is a value. So what the macro does internally is effectively:

decltype( compile_time_bool< bool( something ) >() )

where "compile_time_bool" is a function template overloaded as such:

code:
template< bool Value >
boost::mpl::bool_< Value > compile_time_bool();

template< class FunctionType >
struct compile_time_bool_impl;

template< class ParamType >
struct compile_time_bool_impl< bool( ParamType ) > : ParamType {};

template< class FunctionType >
typename compile_time_bool_impl< FunctiontionType >::type compile_time_bool();
It's one of those crazy things that I don't think anyone would appreciate unless they really thought about how it could be implemented. The library is littered with those kinds of quirky, subtle tricks that hopefully improve usability.

Over the past couple of days though, I've considering changing design a bit. I realized that if I'm careful, I can make it so that the implementation of my macro could be updated to expand out to hypothetical C++1x concepts whenever they come to be. Consider if I change my design to take the following approach:

code:
BOOST_GENERIC_CONCEPT
( ( RandomAccessIterator, ( (class) X ) )
, ( using ( (BidirectionalIterator)( X ) ) )
, ( typename ( (std::iterator_traits< X >::difference_type) difference_type )
             ( (std::iterator_traits< X >::value_type) valur_type)
             ( (std::iterator_traits< X >::iterator_category) iterator_category )
             ( (std::iterator_traits< X >::reference) reference )
             ( (std::iterator_traits< X >::pointer) pointer )
  )
, ( public ( operator minus,      ( X, X ),               difference_type )
           ( operator index,      ( X, difference_type ), reference )
           ( operator plus,       ( X, difference_type ), X )
           ( operator plus,       ( difference_type, X ), X )
           ( operator plus_eq,    ( X, difference_type ), X& )
           ( operator minus_eq,   ( X, difference_type ), X& )
           ( operator less,       ( X, X ),               bool )
           ( operator less_eq,    ( X, X ),               bool )
           ( operator greater,    ( X, X ),               bool )
           ( operator greater_eq, ( X, X ),               bool )
           ( operator less,       ( X, X ),               bool )
  )
)
The named operators are necessary as opposed to +, -, etc. due how C++ preprocessor concatenation works. All operators end up having to be handled with that special syntax, with the sole exception of operator ().

I'm not sure I like how this looks when compared to my current code, but in theory, this design should be just as capable only I would be able to optionally translate it during preprocessing to what C++0x concepts used to look like in the last working paper. That way, once concepts eventually do become standard (some standard after C++0x of course), or at least supported by more compilers as extensions, code written using the library would most-likely be able to just swap out the back-end of my macro and be able to use their compiler's concept implementation underneath the hood. It's unfortunate I realized this so late in development since I already put so much work into the current design. I may just continue on as I have been for now and implement the above design in a manner that uses my current macro in its implementation.

monsterland
Nov 11, 2003

ynohtna posted:

Can you please remember to implement an alternate set of shooting keys for us laptop-jockeys who don't have numpads?

Redefining keys is halfway complete. However I have trouble imagining you using IJKLUON. combo to aim in 8 directions...

You may actually be crippled into 4 directions because nothing except numpad allows for this 8-directional finger placement.

MLand also allows to aim with mouse X-axis movement rotating the cursor around P, but laptops don't often come with mice, either.

This is a problem.

Floor is lava
May 14, 2007

Fallen Rib

monsterstdland posted:

your "P" changes color and starts "bleeding"

I remember seeing this game somewhere a year or so ago. I also remember reading something along the lines that this was some project you worked on in high school with a friend and as far as I could tell you stopped working on it. It's good to see it's still in dev.

monsterland
Nov 11, 2003

floor is lava posted:

I remember seeing this game somewhere a year or so ago. I also remember reading something along the lines that this was some project you worked on in high school with a friend and as far as I could tell you stopped working on it. It's good to see it's still in dev.

I know this will sound insane, but we're adding scripted objectives and redoing the campaign, and then planning to sell it for an extremely low price. It has 2-player coop and deathmatch (peer-to-peer TCP/IP, so LAN or being in the same city is best), saving/loading, tanks (that are controllable similar to the cannon car in Gears of War co-op mode), replay recording and playback, and is probably the only game with unsanctioned reproduction of Doom's BFG weapon.

After seeing VVVVVV, made by one guy, get away with CGA-level graphics, we want to try and sell something that is not all too far removed from that. That's why the project's been resurrected.

monsterland fucked around with this message at 20:44 on Dec 2, 2010

InternetJunky
May 25, 2002

I'm also resurrecting a game that's been stuck in my head for ages and has taken on many failed iterations in code. Thankfully Android development is pretty much the ideal platform for what I imagine.

Here it is in all its current [lack of] glory:


My as-of-yet unnamed turn based strategy game. At least it got me coding at home again after a long break.

Surface
May 5, 2007
<3 boomstick

InternetJunky posted:

I'm also resurrecting a game that's been stuck in my head for ages and has taken on many failed iterations in code. Thankfully Android development is pretty much the ideal platform for what I imagine.

Here it is in all its current [lack of] glory:


My as-of-yet unnamed turn based strategy game. At least it got me coding at home again after a long break.

Looks good so far, where did you get your sprite set?

InternetJunky
May 25, 2002

Surface posted:

Looks good so far, where did you get your sprite set?
Thanks. I wish I could remember where I got the sprites. I went on a hunt for free graphics and downloaded a whole pile of it forgetting to mark where it came from. It's a whole bunch of sprite sheets in a folder called "AngbandTk" if that helps.

I've started my search for artists to replace all this default graphics, but for development it was a big help.

POKEMAN SAM
Jul 8, 2004

InternetJunky posted:

It's a whole bunch of sprite sheets in a folder called "AngbandTk" if that helps.

:google: http://pousse.rapiere.free.fr/tome/tiles/AngbandTk/tome-angbandtkmonsterstiles.htm

Mustach
Mar 2, 2003

In this long line, there's been some real strange genes. You've got 'em all, with some extras thrown in.

That Turkey Story posted:

I'm not sure I like how this looks when compared to my current code, but in theory, this design should be just as capable only I would be able to optionally translate it during preprocessing to what C++0x concepts used to look like in the last working paper. That way, once concepts eventually do become standard (some standard after C++0x of course), or at least supported by more compilers as extensions, code written using the library would most-likely be able to just swap out the back-end of my macro and be able to use their compiler's concept implementation underneath the hood. It's unfortunate I realized this so late in development since I already put so much work into the current design. I may just continue on as I have been for now and implement the above design in a manner that uses my current macro in its implementation.
On one hand, I think it's on the same level of readability as what you've already got and users would definitely appreciate the future-proofing whenever implementation-provided concepts come around, but on the other, concepts might turn out looking very different than as proposed for 0x and all of that effort would be wasted. The latter probably isn't likely, though.

danishcake
Aug 15, 2004
Adding multiplayer to my Chu Chu Rocket knockoff on Android. Making good progress as I've got sod all else to do during the evenings

Xerol
Jan 13, 2007


After some IRC discussion this morning I went and made a quick-n'-dirty keypress mapper.


After ~12 hours of normal PC use


After ~12 hours of normal PC use and 30 minutes of FPS playing



Right now it just does a linear scale from 0 to whatever key was pressed most (also it tracks keys by time held instead of strokes). So if you hold one key down a lot everything else will all but disappear.

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.
I got a new MacBook Air and thought I could find a better use for the eject key. If you don't have a USB DVD drive connected (and I never do), the eject key does exactly nothing and cannot be easily remapped.

So I made this little app that, when you press Eject, lists ejectable volumes. You can arrow up and down and eject a volume by hitting Return. It also groups volumes by device, and you can eject all volumes on one device too. (Anyone who's been bitched out by Finder for daring to unmount one of multiple partitions on an external hard drive will understand the value here.) Works with disk images and network shares as well as external drives.

edit: Let's try Waffle.
edit: No more Waffle.

Only registered members can see post attachments!

pokeyman fucked around with this message at 23:56 on Dec 4, 2010

Wulfeh
Dec 1, 2005

The mmo worth playing: DAoC

Roflex posted:

After some IRC discussion this morning I went and made a quick-n'-dirty keypress mapper.


I don't know why, but this is awesome. I love ideas like this.

Adbot
ADBOT LOVES YOU

bobua
Mar 23, 2003
I'd trade it all for just a little more.

pokeyman posted:

I got a new MacBook Air and thought I could find a better use for the eject key. If you don't have a USB DVD drive connected (and I never do), the eject key does exactly nothing and cannot be easily remapped.

So I made this little app that, when you press Eject, lists ejectable volumes. You can arrow up and down and eject a volume by hitting Return. It also groups volumes by device, and you can eject all volumes on one device too. (Anyone who's been bitched out by Finder for daring to unmount one of multiple partitions on an external hard drive will understand the value here.) Works with disk images and network shares as well as external drives.

edit: Let's try Waffle.



[timg]attachmen1281[/timg]

I don't use an apple anymore, but this is just good thinking\design. As soon as I read it I immediately thought 'wow, osx doesn't just do this already?'

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply