• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.

Rasterman

Members
  • Content count

    133
  • Joined

  • Last visited

Community Reputation

206 Neutral

About Rasterman

  • Rank
    Member
  1. The first lobby I did in ASP and runs on IIS.  The second lobby I did in C++/enet and runs on a Windows VPS, you can get one for $20/month.
  2. Here are the broadcast util functions I made for my game, you should be able to add full LAN discovery with only a few additional lines of code. // http://lists.cubik.org/pipermail/enet-discuss/2009-March/001075.html // designed for LAN discovery of servers // sets up a socket to receive broadcast messages on the given port int enetutil_broadcast_setup_receive(int port) { ENetAddress address; address.host = ENET_HOST_ANY; address.port = m_iLANDiscoveryPort; // create UDP socket ENetSocket socket = enet_socket_create(ENET_SOCKET_TYPE_DATAGRAM); if(socket == ENET_SOCKET_NULL) return ENET_SOCKET_NULL; // allow multiple servers on the same computer to listen to same port enet_socket_set_option(socket, ENET_SOCKOPT_REUSEADDR, 1); // bind to the address to listen on after REUSEADDR has been set if(enet_socket_bind(socket, &address) < 0) { enet_socket_destroy(socket); return ENET_SOCKET_NULL; } // no blocking again enet_socket_set_option(socket, ENET_SOCKOPT_NONBLOCK, 1); return socket; } // designed for LAN discovery of servers // broadcasts the given data on the port specified // returns: 0 if would have blocked, -1 if socket could not be created, < 0 something went wrong, length on success int enetutil_broadcast_send(int port, void *data, int length) { ENetAddress address; address.host = ENET_HOST_BROADCAST; address.port = port; return enetutil_send(&address, data, length); } // returns: 0 if would have blocked, -1 if socket could not be created, < 0 something went wrong, length on success int enetutil_send(ENetAddress *address, void *data, int length) { // create UDP socket ENetSocket socket = enet_socket_create(ENET_SOCKET_TYPE_DATAGRAM); if(socket == ENET_SOCKET_NULL) return -1; // prevent send from blocking enet_socket_set_option(socket, ENET_SOCKOPT_NONBLOCK, 1); // allow the socket to send to the broadcast address if(address->host == ENET_HOST_BROADCAST) enet_socket_set_option(socket, ENET_SOCKOPT_BROADCAST, 1); ENetBuffer buf; buf.data = data; buf.dataLength = length; int err = enet_socket_send(socket, address, &buf, 1); if(err==0) { /* would have blocked, need to resend later */ return 0; } else if(err < 0) { /* something went wrong, error! */ return err; } enet_socket_destroy(socket); return length; }
  3. 160MB isn't that much, just copy the memory, spin off a thread and write it to disk. worst case display 'saving world' to the players, if there are only 8 and it only takes a few seconds then no big deal. another option is to slowly copy all data to disk, tracking all changes after you started, then at the end apply all those changes together to the disk image, this is probably going to be a lot slower than just writing the whole file, but it won't use any memory.
  4. Unity

    I downloaded and tested SDL 2 with XCode 4.5 and it seems to be very much in development. Only half of the SDL tests compile and of those none actually run or do anything.
  5. Make it text/icon based, you can work on one of these until you are blue in the face. There is no point on competing on graphics since AAA games blow you away, so try to make it unique via the story, game mechanics, and characters. You can do all of this in a text/icon based game. If you find you are blowing through the game fast, then you can always add a beautiful graphical layer on top of the game engine, or better yet hire artists to do a professional job on it. It is also MUCH easier and faster to create assets for a completely specd out game than one in development.
  6. [quote name='clb' timestamp='1349869346' post='4988680'] In my engine I support Win7, Win8RT, OSX, Android, iOS, Web (JS+WebGL), NaCl and NPAPI, but not linux. The reason is majorly because the number of distros is huge and after evaluating it, the build and packaging process is a pain. If you ask five different linux people what the most important distro to support is, you'll get at least five different answers. Depending on distro * distro version * kernel version * GPU card vendor combination, the support for OpenGL driver varies wildly. The system testing complexity is up the roof compared to any other platform. And most importantly, since the market segment is smaller compared to Windows and OSX and there are no good marketing channels, I can't see the point in it. If you're already a linux whiz that knows the different distros and kernels and drivers in and out, perhaps you'll be able to pull off decent support for all the combinations with a bearable/manageable pain, but for "normal" developers, I don't think it's at all worth it. If some big player (Valve+Steam?) comes in and manages to unify the development pain (doubt it), then I'll definitely be reconsidering. [/quote] You may find these articles a good source, supposedly they explain how to create an exe that will run and install on any distro, so you only have to create and manage one. http://www.gamedev.net/page/resources/_/technical/game-programming/linux-game-development-part-1-r2372 http://www.gamedev.net/page/resources/_/technical/game-programming/linux-game-development-part-2-r2377 http://www.gamedev.net/page/resources/_/technical/game-programming/linux-game-development-part-3-r2389 http://www.gamedev.net/page/resources/_/technical/game-programming/linux-game-development-part-4-r2400 http://www.gamedev.net/page/resources/_/technical/game-programming/linux-game-development-part-5-r2421
  7. [quote name='Orymus3' timestamp='1349823348' post='4988520'] You don't get a lot of sales on Linux, but its generally not an overcrowded market. The big advantage you might have here is if your game is "a lot like" another game (say, an RTS) and your competitors didn't port to Linux yet. You might rake a few sales you wouldn't otherwise. If you can identify your market and competition effectively, it might turn into a more appealing market. Without more details about your product, it would be impossible to advise. [/quote] Here is my game: http://www.isotope244.com/machines-at-war-3.html [quote name='kd7tck' timestamp='1349829253' post='4988547'] Linux gamers may be fewer in numbers but they sure do fork over more cash. The article below illustrates my point. [url="http://www.hypable.com/2012/10/03/humble-indie-bundle-6-ends-2-million/"]http://www.hypable.c...ends-2-million/[/url] [/quote] I am well aware of that Unfortunately without numbers its pretty useless, is Linux 1% of the sales or 20%, thats a huge difference, and seeing the average price is higher leads me to believe the marketshare is much lower.
  8. You are wasting your time, first write a game that demands 10,000 requests per second, and then you will be able to hire a whole team of hplus types to solve all your problems
  9. I already support Windows, Mac, iOS and plan on doing Andriod. I was wondering if Linux would be worth it, most of what I have found for real numbers suggest its not worth it.
  10. Unity

    Thanks Lazerator, what platforms are you using Allegro on? Have you used multitouch with it?
  11. I am looking at porting my game to use either [url="http://wiki.libsdl.org/moin.cgi/APIByCategory"]SDL 2.0[/url] or [url="http://alleg.sourceforge.net/a5docs/refman/"]Allegro 5.1[/url] and can't decide which to use, both seem to have great support for Windows, Mac, Linux, and both somewhat support iOS and Android. The 3D and shader API seems better in Allegro and when posting on the forums I always get a response from the Allegro community, while not one person has answered an SDL question. I thought more people use SDL though? Does anyone have any experience with both libraries?
  12. Unity Allegro SDL FreeGLUT Unreal UDK
  13. What are sales of a game on Linux like compared to Windows and Mac? Assuming a game that would seemingly fit the Linux market, a real time strategy game, how much would it sell on Linux?
  14. Assuming your game logic doesn't depend on where the item is in inventory, why even manage the positions of items in inventory on the server? Simply let the user do what they want, and after a user adds inventory, the server calculates how many inventory slots the user has and is using, if they are using more then they have then you need to do an inventory audit of the user.
  15. You can make any game multiplayer given enough time and talent. I dreaded dragging my 6 year old 150k line codebase (3rd game in the series) multiplayer as it was littered with rands, physics in the drawing code, and some other big no nos, but in the end it only took about 6 weeks to do it and was easier than I had anticipated. Since it sounds like you are starting out I would do the most simple single player game that will meet your desire.