• Content count

  • Joined

  • Last visited

Community Reputation

3443 Excellent

About alnite

  • Rank

Personal Information

  • Interests
  1. The Go Programming Language

    I have been using Go a lot. Is it suitable for game programming? I don't think it's quite there yet, simply because there is a lack of interest in developing a UI for Go. Check out go-gl for GLFW support. It is, however, very suitable to write server-side code for your game. The UI can be served from the Javascript side through websocket. In some ways, I think it may end up be a better architecture because you are separating the game logic/data from the rendering.
  2. When did immediate mode take over the web?

    Lol. Web development is the new entry-level programming framework that people are learning nowadays. Coding bootcamps are churning new web developers every month. In the past few years, how many times have they switched frameworks? From Angular 1.3 to 2.x. Now, there are Polymer, React, Vue, among jazillions of many other Javascript/CoffeeScript/TypeScript/CSS/Less frameworks out there, each claiming better and simpler than ever before? Many times I have felt blessed that it was games that introduced me to programming.
  3. Seeking True Economic Games

    OpenTTD for sure does not have any stock/bond trading. It only has basic loans and subsidies. I don't know about the recent Transport Tycoon.
  4. Seeking True Economic Games

    Transport Tycoon/OpenTTD/Railroad Tycoon are more about delivering goods than money management. I still play OpenTTD once in a while, and I like that game because of the challenge in creating an extensive transportation network across many cities with complex railroad signals, not because I can earn money. It has deeper mechanics in railroad signals than money. The money is just a score, and it matters less when you start having $1,000,000,000. What about an RPG with trading aspects? What about Monopoly? What about Civilization? What about Jones in the Fast Lane? All of these have some form of currency.
  5. Seeking True Economic Games

    The definition of economic games seems a bit hazy here. That list has plenty of Tycoon games which I personally think are not economic games. Those tycoon games are more simulators with money as score than real economic games. I actually think Acquire and Speculator should be among the list.
  6. I also recommend Javascript for beginners nowadays. Not because it's a great language (it's not good, but not too bad either) but the fact that it's available in your browsers. Thanks to HTML DOM, you get rendering engine basically for free.
  7. Persuasive Games

    I must have done something wrong that I didn't get past the questionnaires in that so-called game. I saw some blood drippings based on my answers, and the questions just looped back. So, meh, I did not get any game out of this "game". It felt like a questionnaire inside a questionnaire. Edit: Here's my thought on the whole persuasive games. I think the questions in the game is too close to real life. When people play games, they do it for fun, not to think morally or ethically. So how do you persuade players with games? Create your own fictional universe of which a particular event is happening, and you make choices in that universe. You don't ask questions like "What do you think of refugees?". You put the players among the refugees, create missions around that situation, and let them write their own story. It's like educational games cannot be about education, but it has to have its own world but adopting real-life knowledge/metrics/history to make it easier for people to remember. Games like AoE taught a lot of history to so many people, but it doesn't ask the players about "What year did Julius Caesar die? [multiple choice]". You can't ask players what's "5+3=?" and put a timer with a pretty music and animation. That's not a game. That's a math software. You instead create a trading game in which players have to specify how much they are buying at what cost minus the discount. The act of trading in the game will teach them math.
  8. Out of curiosity, would you have then paid to unlock Darth Vader in the recent EA's Battlefront 2? The general population seems to disagree with their microtransaction scheme. My own opinion of microtransactions is that it can ruin the game. One practice that I find common in mobile games is to create a ridiculously powerful item with very very low chance of acquiring, e.g. 0.1% drop rate and you gotta collect 50 of these 'fragments', and a 10% success rate to forge the fragments to the real item. Or charge a ridiculous real money for it. This is an obviously a scheme to get people to pay. If you happen to get a whale among your players, then that player can single-handedly ruin your game for other players, because it can basically just one-shot other players in a PvP combat with this powerful item. So, you need to find the right balance. If you intend an item to be acquirable through normal plays, then use reasonable metrics so that free players can enjoy and get their "sense of pride and accomplishment". If you are selling an item through microtransactions, then I think the items should be exclusive for paid players only, while at the same time not too ridiculously powerful that it could ruin the game for everyone.
  9. Reinventing the wheel

    I also agree with this video. I know "reinvent the wheel" is just an idiom, but to say Unity is a wheel is an oversimplification of the product. I tend to see Unity or Unreal as more like products than wheels. Wheels in the programming sense would be rewriting quicksort, or rewriting std::vector. These are code that have been thoroughly tested that you can reuse immediately since these things are simple enough and can be reused in all of your projects just like real literal wheels can be used for all kinds of contraptions you can imagine. Unity/Unreal are more like products that you use make games. Creating a game engine is not exactly equivalent to reinventing the wheel. You can do so if you have either of the following in mind: 1. To compete directly with Unity/Unreal. If you somehow see an angle that you can compete with these two giants with multi-million dollars and hundreds of developers behind them, then by all means do it. 2. Just to learn the process about making game engines, but not necessarily try to compete with Unity/Unreal. If you just want to make a game, then there's nothing wrong with using Unity/Unreal, but be informed that your skills are dependent on using their products. There's also nothing wrong with sending vertices yourself to the OpenGL buffers, just that it of course would be more time consuming.
  10. Now he has all the excuses wants.

    I agree with you, but I also think that it's unfortunately not a solution that can be applied universally. There are always going to be crazy people, and sometimes you don't have the time to converse with them before they do the unspeakable, like the Vegas shooter. He wouldn't announce himself he's going to shoot. He wouldn't be holding a protest in front of some city hall about whatever he disagreed with. He's just gone plain crazy for whatever personal reason he thought of himself. Speaking of which, we don't even know what happened to that investigation. Then there's another different kind of crazy, the ideological crazies, like the radical Muslims and the KKK, and so forth. An organized crazies, if you prefer to see them that way. While they don't necessarily commit violence all the time, they have a certain stance when it comes to socio-economic/politics/religions, and their job is to convince as many gullible people as possible to do the dirty deeds for them. Unfortunately, the Internet, and social media in particular, has made their job a lot easier to reach a wider audience. With some photographs, carefully crafted memes, you can spread your ideas far and wide. For local organized terrorist groups, like the KKK, you can definitely work out a compromise with them. They are citizens of the country too, and have the same rights as you do. I don't agree with what they do or what they have to say, but I also don't agree with censoring them like many of the left trying to do. A lot of their members become members because they are convinced that they have been taken advantaged of or neglected by the government/society/the left/the establishment/the institutions/whatever. Conversations need to happen, not censorship, and definitely not violence like what the antifas are doing. Then there is the international terrorist groups like the ISIS. This is a whole different beast, and where I agree more with the harder, right-wing approach to them by limiting immigration and putting a watch over anyone who's been in contact with them. ISIS members do not have the same constitutional rights as you do because they live in a different country with different laws. They enact their own laws. Your country's constitutional laws stop at the border. This is what some people from the right-wing have been frustrated about the left-wing approach that the left tends to treat them like fellow citizens, all under the umbrella of "human rights". This is why it's sooo easy to convince any young frustrated white males in the Midwest to join the KKK because all the KKK has to say "They care more about the non-American Muslims more than you. Take America back. Make America Great Again." Done and Done. Yet, instead of convincing them back, "hey, you are fellow Americans, let's defeat ISIS together", the left is telling them to fuck off. Well, this is basically the Internet. Reddit, 4chan, 8chan are full of these.
  11. Ha. I am not a DBA, nor do I want to be one. I prefer schemaless document-style DBs personally, and I am also in the middle of researching a good reliable NoSQL database for my own project. Unfortunately, every single one of them seems to be designed for specific cases, and using it for other means can usually lead to headaches down the road. That's why I recommend to start off with the data model and how the data is going to be used, at least some rough idea, because that can narrow it down. Even as simple as knowing the maximum number of items in a player's inventory or do you allow trades between players can determine whether you want to normalize or denormalize your data. Then hardware requirements can matter. NoSQL tend to have higher hardware requirements. They can claim 100M+ reads/writes per minute or whatever, but if they achieve that with a cluster of high end machines, then it's not really a number to rely on when you are on a budget. Team size can also affect the decision. I don't quite like Cassandra because it seems to be a high-maintenance type of DB, the kind you'd need a designated DBA for. It's highly configurable so most likely suits all kind of needs, but that also means someone needs to know all about it. I am pretty sure piojo should be okay with MongoDB, or even Postgres if migration isn't much of a concern.
  12. Gameplay Combat in Action RPGs

    Look up bounding box collision detection. They are not limited to boxes, some use spheres, some use even finer detection with octrees. Typically the more accurate the collision, the more expensive is the calculation. Once two geometries are "colliding", then different animations and events can be triggered.
  13. It really is a good idea to start off with your data model first, normalized/denormalized. Run through creating/updating scenarios, and identify critical areas. If strong consistency and complex joins are critical to your game, then you should go the way of RDBMS. To my knowledge, social games that do not require active player-player interactions (e.g Clash of Clans, etc) can safely use NoSQL. I have seen people put the entire player data into a big JSON object and just send that object back and forth between server/client. MongoDB or other key-value NoSQL databases are okay with this type of usage. Once you start having more complex relationship between players, or you need to do joins based on certain player data like "give item X to all players level 20 and above that only has a chainmail in the inventory and nothing better", that sounds like you are going in the direction of RDBMS. Although there are techniques you can do with kv databases to accomplish the same task, they are typically more like hacks than actual solutions.
  14. Why watching movies is a necessity for games

    If you want to turn your games into movies, then sure. But other than to serve as source of inspiration, no, watching movies is not important to making games.
  15. You are starting to venture into the server-side development, knowing which logic to do on client vs server, how to prevent duplicate entries, and among many other fun things. Once you have your own domain, it's just a matter of updating your CNAME record.