Jump to content
  • Advertisement
  • Sponsored by Amazon GameLift

    1. Past hour
    2. Green_Baron

      Linux sockets + http get request = no data

      Yes, because gethostname expects a hostname, not an url. man gethostbyname helps, but also says it is deprecated and getnameinfo should be used instead. But some finger training won't harm 🙂 That example works on my machine. Something is probably borked and needs further unborking. The exact code might help. Yeah, it results in a warning. It is a working example. Explicitly casting would be better. But you can use the pointer to hike along the list of ip addresses, convert them and print them out. while( *r != NULL ) { fputs( inet_ntoa( **r ), stdout ); putchar( '\n' ); ++r; } No idea. I pasted that code directly from the editor after it ran. If you resolve "https://..." you should get that error, "www.google.com" should work ...
    3. deltaKshatriya

      Has C# replaced C++?

      Huh, so there we are. A non C++ game engine. I'm sure more exist like it. I personally would love to see a game engine written in Shakespeare.
    4. http://xenko.com/ Entirely C# (which is all i know about it)
    5. Hi 3MPORiO, Germany close enough 😉 I'm interested to hear more. Could you tell some more via DM? Cheers
    6. Today
    7. We are data7! we are currently working on a rpg! and need 3D Artists! Game Description: Ina alternate universe where earth has cracked into a million pieces.people now live on airships and floating islands. still rebuilding... but a threat arises! as islands get destroyed 1 by 1. you awake. and decide that something must be done... Requirements: - Must Be Able to model - Must be able to texture models - must be able to create assets needed. apply here:https://forms.gle/kraEsCsvspKNgSHq5 or email us at: Data7games@gmail.com
    8. It's unwise to make far-reaching conclusions based on a single response from a stranger on the Web.
    9. deltaKshatriya

      Has C# replaced C++?

      This is fairly true. I'd say that you and @Lucrecious are both sorta right here: C++ is still a fairly in demand language/skill because it still remains the best performance-wise. That said, there are many cases where old codebases are written entirely in C++ and it's much more cost effective/easier just to maintain those bases than to port it all over to some other language. There's still a decent demand for Objective C programmers, which is surprising, given that Swift is essentially a replacement for Objective C (though I do believe there are some reasons to use Objective C, but don't quote me on this, since I'm not a mobile dev) I'd definitely love to read/discuss this topic more, but I think it's fairly off topic here, so I'll refrain from adding more. As for the actual thread topic, C++ and C# are both used to make games. Unity uses a variant of C#, many game engines make use of C++. I don't believe that game engines use languages other than C++, though there are probably some out there that do? Anyhow regardless, both are very useful languages.
    10. _WeirdCat_

      Linux sockets + http get request = no data

      in my eample gethostbyname was returning NULL (just to clarify) in your first example i get error converting address and in second one i cant compile this line struct in_addr **r = s->h_addr_list; however i see that you use ip address instead of url Additionally if i try to resolve www.google.com to ip address errno claims that HOST IS NOT FOUND....
    11. Gnollrunner

      Has C# replaced C++?

      "Dishonest" implies I'm lying. I simply disagree . For a long time Java and C# had horrible performance compared to C++. I bench marked them many times over the years. Java in particular was pushed very hard at the department I used to work in at intel, and programmers ended up pushing back mainly because of performance issues. It has more recently done a lot of catching up but it's still not there yet. Same goes with C# I don't complain about dynamic variables in many languages that use them, because they typically don't hurt the target usage. Requiring the use of a GC in a systems, or even applications programming language is constraint that effects how I can handle memory management and therefor can effect performance. Proven by who? Even in C++ I rarely use the standard heap. Most of my memory management is done with a custom heap library I have built up over the years. Most of the time I'm using some flavor of slab allocation, where new gets inlined as a free list pop. Also if I don't need thread safety for a particular heap it's turned off. I don't think you have that level of control in C#. i.e. Cutting edge 3D games and other math intensive and mission critical software. It's all relative. If performance really isn't an issue we can write everything in Python. If C# works for what you are doing then go ahead and use it. I'm certainly not telling anyone what language they should program in. However C++ still exists because there is a need for it.
    12. Make the random number in the range [0,1]. Map it to the distribution using a function like smoothstep. Scale by your max value of 1000. Instead smoothstep you could use something that allowas precise tuning, like this gain function: float gain(float x, float k) { const float a = 0.5*pow(2.0*((x<0.5)?x:1.0-x), k); return (x<0.5)?a:1.0-a; } Taken from here: https://www.iquilezles.org/www/articles/functions/functions.htm x is the random number, and k sets how steep the curve is. Using 0.5 for k looks looks this: The smaller k, the closer the acerage will be to the 0.5 you want.
    13. Tracker10

      [Android][iOS] Paper StickMan Online

      Background music is awesome - seems addictive.
    14. Thanks for your feedback. I really appreciate it. As a Science Fiction writer, I happened to write this story and thought it would be interesting some adaptation as a game. However, if it is politically incorrect in some way, I guess it won't ever be developed. And that's all right for me. As for the stats, however, I did my research over the internet, It may have been not deep enough, but I found out that even if in the first world women gamers numbers are increasing, in most of the world the difference is still big.
    15. I ask you kindly to refrain from such statements in the future. I understand this discussion got a bit heated with C#/C++ already. I am ending this discussion from my side now with a last statement that such a trivial thing is not even nearly comparable switching between any other two languages, especially from or to C++.
    16. I have a class for the NPCs in my game. Each NPC has an athleticism attribute that ranges from zero to one-thousand. I am randomly generating this value. I want 70%-80% people to have a roughly average amount of athleticism, somewhere close to 500. Is there some algorithm I can apply that will skew the randomly determined athleticism score so that it's usually close to 500, but always returns a few scores that are either much lower or a lot higher?
    17. Green_Baron

      Linux sockets + http get request = no data

      That's bad. Here's a plan b for converting the inet address to something connectible that connects. I love that tinkering 🙂 int fd = socket( AF_INET, SOCK_STREAM, 0 ); if( fd > 0 ) fputs( "Socket created\n", stdout ); struct hostent *s = gethostbyname( "www.n-tv.de" ); if( NULL == s ) fputs( "Address lookup failed\n", stderr ); struct in_addr **r = s->h_addr_list; struct sockaddr_in addr; //memset( &addr, 0, sizeof( addr ) ); addr.sin_family = AF_INET; addr.sin_port = htons( 80 ); addr.sin_addr = *r[0]; if( 0 != connect( fd, (struct sockaddr *)&addr, sizeof( addr ) ) ) fputs( "Error connecting to socket\n", stderr ); else fputs( "Connection established\n", stdout );
    18. _WeirdCat_

      Linux sockets + http get request = no data

      Gethostbyname returns null
    19. Lucrecious

      Has C# replaced C++?

      You thinking C# and Java are functionally the same is pretty simplistic, sorry. I've only heard first year university students say this. Java just by merely enforcing every class method to be virtual already requires a different programming technique.
    20. Since C# was and still is a plain Java copy from Microsoft and since both have developed in parallel nearly in the same direction during the last ten years, I wonder what you are speaking about. Syntax, functionality and philosophy wise they are basically the same with a different naming scheme. It takes a few minutes and a bit Stackoverflow to switch between both languages for a skilled programmer. Not so easy with C++ because it has a totally different design philosophy. It's not enough to simply know a syntax, you have to think in a language. It is increadibly difficult to switch between C++ and C# mind-wise. People switching from one language to another often complain about random things in the first days because they are still stuck in another mindset, not being able to find the same solutions for the same problems. For their own worst case scenario they dismiss it completly. Luckily it keeps being their own problem.
    21. Green_Baron

      Linux sockets + http get request = no data

      For comparison, this connects. Maybe it is useful, maybe not 🙂 // @todo check errno int fd = socket( AF_INET, SOCK_STREAM, 0 ); if( fd > 0 ) fputs( "Socket created\n", stdout ); struct sockaddr_in addr; //memset( &addr, 0, sizeof( addr ) ); addr.sin_family = AF_INET; addr.sin_port = htons( 80 ); if( 0 == inet_aton( "13.32.90.60", &addr.sin_addr ) ) // www.n-tv.de fputs( "Error converting address\n", stderr ); else fputs( "Address converted\n", stdout ); if( 0 != connect( fd, (struct sockaddr *)&addr, sizeof( addr ) ) ) fputs( "Error trying to connect\n", stderr ); else fputs( "Connection established\n", stdout ); // ... do somehting ....
    22. Lucrecious

      Has C# replaced C++?

      I feel like this is a little bit of a dishonest take though. The reason C++ is industry standard has to do more with the dependencies on legacy C libraries and less so on performance. The reason C# isn't taking over is because it's relatively new in cross platform compatibility and probably a load of other factors. You complaining about getting around the GC in C# is like complaining getting around dynamic variables in dynamic programming languages. Sure, you can work around them, but you'd be going against the language's design paradigm. It's not the same as me complaining about header file maintainence on C++, they're completely useless and part of C++'s design paradigm. GC has been proven time and time again to only be negligibly slower than memory management for many problems, it's partly why Java, as much as it is annoying to code in, is so widely spread. C++ is really only needed when performance is an issue to begin with, otherwise it's not useful at all. But anyways, this is turning into a C++ vs C# thread instead of whether or not C# will be replacing C++. I'll let you have the last word on this topic if you'd like.
    23. _WeirdCat_

      Linux sockets + http get request = no data

      Unfortunatetly theres error on connection (cant even connect) now im not quite aware if i should set ip address or can i use www.google.com, maybe theres additional option for the socket that i do not set?
    24. Gnollrunner

      Has C# replaced C++?

      You'd have to prove that to me. IMO if that was really true C# would be taking over the industry, and I don't see that happening. "Fun" is kind of subjective. "Easy" is even kind of subjective. With C# I would probably be banging my head trying to get round the GC. But if it's working for you, then great.
    25. Rutin

      DOOM: Challenge accepted!

      👍
    26. No, it has not replaced C++, neither in game development nor in any other programming league. Choosing any tool over any other for everything is fundamentally a mistake. C# does not even come close to the most demanded languages in industry, which is by far JavaScript, Java and C++ in basically all technological fields. Also of note here is Google's Go and Python in engineering and scientific fields. It is a trending programming language but so is Rust (-> C++) and Kotlin (-> Java) and I highly doubt it is going to beat those on the long run. Choose the right tool for your task, switch if nescessary. Don't hesitate. Don't be afraid.
    27. Gabz

      Special Effects For Games

      For months I've been putting together my knowledge about VFX for Games in this special Udemy Course. It's aimed for everyone who wants to learn Visual Effects. It will take you from a Beginner standpoint to an Intermediate level in Game VFX. It contains the theory, the practice and the creative liberty you will need in your future Visual Efffects career. You can find the Course here. Enjoy!
    28. Lucrecious

      Has C# replaced C++?

      That's fair. I actually worked a little bit on the team porting .NET over to Linux - it wasn't all ready for the public when I was there. I've tried getting monodevelop to run on OSX, but was too lazy after trying to troubleshoot issues with crashes. Maybe if I tried a bit harder I could get it to run haha I don't believe C# will ever get to the point of beating C++ in performance, albeit the performance difference is pretty negligible for most problems right now. C# getting faster than C++ is pretty much impossible as long as C# is GCed. That being said, I don't think performance was ever the main objective, I believe C#'s main objective was to improve on C++'s faults while maintaining flexibility and usability. In other words, C# wasn't made to be fast, it was made to be easy and fun to use - which it is haha
    29. AMD published a whitepaper on the all-new AMD RDNA gaming architecture, providing a technical analysis of the underlying architecture powering “Navi”- based graphics cards, including the new Radeon RX 5700 series GPUs. The RDNA architecture is optimized for efficiency and programmability while offering backwards compatibility with the GCN architecture. The new RDNA whitepaper details the underlying technology of the architecture, including the system architecture, shader array and graphics functions, execution units, cache and memory, advanced visual effects, the Radeon Multimedia and Display engines, and much more. For a deep-dive analysis of the RDNA architecture, download the whitepaper here.
    30. Ogniok

      Warriors and Tactics Prototype Gameplay

      Warriors and Tactics is a highly tactical turn-based battle arena game blending elements from hero shooters and tactical games. https://gamejolt.com/games/warriors-and-tactics/434085

      © Copyright by Fireline Games

    31. I'd love to see some stats to back up some of your claims and assumptions. It seems highly based on stereotype to me. I think you could build a game with multiple play styles, such as overwatch, without forcing your own ideas of who should play what. Most of the women I know would be offended, not eager to play the game above.
    32. RoKabium Games

      Something Ate My Alien

      You are the AI of a very skilled mining ship called Antalasia, currently cruising the remote solar system Bitiax looking for mining opportunities. While peacefully scanning for elements on the nearest planet Metis, Antalasias systems are suddenly taken offline and the ship turns dark for a second before being booted up again with all computer screens flashing “Intrusion detected”. Under control of a pirate ship, you must send down your faithful aliens to the planets below and battle to find the loot that the pirate is demanding! More In-depth: A 2D digging, adventure puzzle game with some retro feel reminding us of the amazing first digger games such as BoulderDash that we knew when we were younger. That is the type of game me and my partner wanted to create as our very first joint project for our studio “RoKabium Games”. Both being avid gamers we hadn’t seen many games in that genre that focused more on the actual digging being the main element rather than being an action plat former or survival and crafting sandbox with the occasional digging part. So last year we started working and planning for our game “Something Ate My Alien”. We knew early on that for a 2-person team to pull of creating a whole video game we had to have a planning structure for a game that wasn’t too large or complicated. So early ideas of making a full blown 3D, interactive, huge sandbox with multiplayer alternatives was just not gonna be a good starting point. We scaled down the idea of a huge concept and decided to rely more on our existing skill set in the game industry. We decided to focus on a more manageable core of that we ourselves would like to play and what we believed other people would also enjoy to play. A finite game story of about 10 hours game play from start to finish, something fun and charming with just the right amount of action/digging/puzzles ratio. We also knew that our game would show quality and engaging graphics being hand painted by myself and it would all be done in a style that would ooze retro, hand painted, uniform and a beautiful game with easy to navigate and clear game mechanics and graphics. We wanted it to be a lighthearted but a addictive little gem suitable for a both younger and a more adult audience. Our game would be exactly how we envisioned it since it would be the labor of our own vision, not working for anybody else. As a digital artist with several years experience in working for game studios and painting game assets, backgrounds, icons, characters etc and being part a team of other game developers, I did have some much needed experience in understanding just how much art is needed for a complete game. Even the smallest game contains more art pieces than you might think. For example, for every animation you do in 2D graphics you have to paint a new image and each animation can have anything from a very basic 5 frames up to 30-40 frames. So for each enemy you draw for example you need to also draw that enemy having an idle position, a walking cycle, a running cycle, an attack cycle, a dying cycle, a jumping cycle etc. So for one single enemy in a game you might have to produce up to around 100 images. Add to that, our game would have at least 10 different enemies for each level and we have designed our game to have a total of 4 levels. Each game level or planet as it is represented in SAMA is built up with a set of ground tiles that has seamless tiling for a smooth and more realistic look. For each tile-set I’m designing 6 variants so the illusion of random and unique ground that looks like it is not repeating. Each world has 4 unique tile types to add variation for the digging mechanics and giving the player more varied game play. On top of normal ground tiles we have variants of 20 unique decals and edges created to blend different types of ground together better and adding even more realism. Inside the ground tiles you can as a player find all kinds of loot. So far I’ve designed 25 unique minerals, 9 different type of gemstones, 8 different kind of gases (each with animation cycles), 28 types of artefacts, 12 different types of complete fossilized animals which consists of 62 separate type of bones to find. There are teleporters, oxygen stations, health hearts, energy boosts, lamps to light up the dark caves, secret doors with puzzle areas to solve to get rare loot or upgrades. There are icons for every item and enemy you can find. All of these visual elements are hand painted by myself and still this is just the bare base of each planet level. When designing the UI for the game we both wanted it very neat and tidy look, using our main colour scheme of blue-green-warm yellow that I first came up with during the conceptual art at the beginning of the project. I also wanted some elements to have somewhat of a computer screen/electronic look with glowing outlines to emphasize that you as the player are the actual AI of the ship and the UI you see is the computer interior. While continuing painting and designing the artwork for SAMA we are getting closer to a first Alpha of the game and we are hoping that with the help of feedback from gamers around us and people interested in our game we can develop a game that is incredibly fun and beautiful to play. See more over at our website: Somethingatemyalien.com or Steam page at https://store.steampowered.com/app/1047870
    33. RoKabium Games

      SAMA

      Images & screenshots from "Something Ate My Alien" game by RoKabium Games.
    34. Thanks for your input, Nate :) Now I've got a good understanding what you mean. I will definetely keep that in mind when mixing and mastering my next project!
    35. Jonathan Concepcion

      OneBit Adventure

      In this game, you adventure the lands to find enemies to level up your stats, and discover the delicious loot scattered throughout the lands. Choose from a variety of classes that range in different abilities in this epic dungeon crawler experience. Currently in free to play on the Google Play Store. iOS at a later date. We are running a Kickstarter to help bring more content to the game: Kickstart OneBit
    36. We are a team of passionate developers! We are looking for people who want to make their first game or developing as a hobby. Our goal is to practice making games together and learn on the way! And eventually be a great game development group! We already got the basics for our game! Link to a review of the game: Link to a review of our game (we don’t have a modeller yet, that’s why the game doesn’t looks well) Explanation of the game will be found in the #game-design channel Non profit (At least for now) We mostly need 3D modellers but anything else will also be great! This is our discord: Link to our discord server If the link expires, you can contact me in discord: Cringey Boy#1615
    37. If you're on linux, use Wireshark to watch what is going over the wire. If the response is coming in to your machine, but you're not receiving it, the problem is when you read the socket. If you're not getting a response back at all, the problem is elsewhere. Use telnet to connect to the remote and and emulate what you think your program is doing, while watching the Wireshark output. See if they're different.
    38. _WeirdCat_

      Linux sockets + http get request = no data

      sendstrtofd is just a write function, ( int wb = write(sockfd, &pdata[ count ], size_t( len_to_write ));) readfromfd2 is just a read function. ( nbytes = read (sockfd, buffer, TCP_PROTOCOL_MAX_PACKET_LEN);) Nothing more. Connection is done like this: int ConnectTo(AnsiString serv, int port) { Clear(); portno = port; sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) return -1; server = gethostbyname(serv.c_str()); if (server == NULL) { LOG("serve null no host"); return -1; } bzero((char *) &serv_addr, sizeof(serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr = INADDR_ANY; bcopy((char *)server->h_addr, (char *)&serv_addr.sin_addr.s_addr, server->h_length); serv_addr.sin_port = htons((uint16_t)portno); if (connect(sockfd,(struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0) { LAST_EVENT = TCP_ERROR; return -1; } Clear(); timer.startTimer(); return 1; } Also about this header connection:close it was just a sample i downloaded from internet, with or without it the result is the same (no data and this errno 107)
    39. Bregma

      Has C# replaced C++?

      At least one popular commercial game development product uses C# as its primary development language. Because of its popularity among independent and hobbyist developers, you will encounter a lot of C# questions and code in game developer social media. It's sort of a selection bias. You might find most big commercial game development shops don't use these third-party tools (and don't use C#), but then again they don't hang around on social media asking about how to use their tools, either. It's interesting to note that the products that provide a C# interface for customers are themselves written in C++. If you want to go deeper, it's also interesting to note that the C++ runtime is itself written in C, although most modern C toolchains are written in C++.
    40. Some suggestions: (1) Don't use 'Connection:close" in the header (shouldn't hurt, but why complicate things when troubleshooting?) (2) You're using some kind of mysterious third-party library. Start by consulting the documentation on the library. Since the problem appears to be either your use of the library or the library itself, and you have posted nothing about the library including its name and where someone else can find information on it, it's not possible to offer any kind of help about your problem here.
    41. Zakwayda

      Organizing objects for collisions - hobby game engine

      Since no one's responded to this yet, I'll offer some comments. I realize what you've posted is pseudocode or example code, but one thing you might consider if you haven't already is avoiding duplicate collision checks (that is, checking A against B and later, redundantly, B against A). It may not matter depending on the cost of the collision checks and the number of checks performed, but it's a typical and often straightforward optimization to make for the narrow phase. As for your specific problem regarding collision callbacks, a simple and low-tech solution might be to downcast as needed. Downcasts are sometimes frowned upon, but are nevertheless sometimes used for this sort of thing, even in widely used frameworks. (dynamic_cast can offer some safety here. It may incur some performance cost, but that may or may not matter, depending.) There's also the issue of baking the collision system into the object system. I won't go into detail here, but I can think of some criticisms of this design choice (such as that it seems to assume all objects are interactive, which doesn't seem like would necessarily be the case). There might be some other design patterns that could be leveraged here, but I'll move on to some more general suggestions. I don't want this post to be excessively long, so without going into great detail I'll just mention a couple other things that might be worth looking into: the often controversial entity/component-based approach, and the possibility of introducing a scripting system (I know you were critical of JavaScript and dynamic typing in your post, but I wouldn't necessarily dismiss such languages or scripting in general). You may not want to make such significant architectural changes at this point, but I think either or both of these could help address some of the issues you're facing.
    42. GameDev.net

      Building a Discord

      Discord is one of the most popular communication platforms for gamers. In this article, we'll be going over our journey of building up our community through the popular social app, Discord. We'll be discussing how to build a Discord server, the various features, and why you should even make a server in the first place, as well as the process on how we decided to build and tailor the server to fit the needs of our studio and community. For those unaware: Discord is a hugely popular communication app, especially in the gaming community. It allows users to join a server (Like ours!), and connect with other users to chat via voice and text, as well as video chat in private groups. According to Statista, Discord has over 200 Million registered users as of December 2018, and that number has surely grown in the time since. Discord has many different, unique features that help users interact with each other. Users are able to join many different types of servers at a time. They can organize these however they would like based on their own preferences. In addition, those who run servers are able to customize them however they'd like by adding various channels, bots, user roles, and more. The Benefits of Discord As mentioned before, the ever-growing popularity and vast Userbase of Discord within the gaming community makes it the perfect place for developers to bring their fans together. Discord's various methods of communication allow for developers and users to interact seamlessly and quickly with one another. A common feature in servers centered around a specific game and/or studio are channels dedicated to feedback and/or bug reporting. These channels allow users who are playing or testing a game to very quickly give feedback on what they like or not about a game, and also allows them to report bugs they encounter during gameplay. The beauty of this is that these issues tend to get reported and fixed much faster, and developers are able to communicate back to the Userbase in real-time. Another feature of Discord that is great for developers is the @everyone feature, which allows someone to notify (or "ping") everyone in the server when something important comes up. Typically with a game-oriented server, announcements include things like updates/patch note releases, beta sign up opportunities, server maintenance times, and much more. The feature is a great way to get information out to everyone in the community quickly, efficiently, and effectively. Having a community helps news about a studio's game get out faster, and is a great way to spread news about the game through word of mouth. Users can create server invites whenever they would like, simply by clicking on an invite link. As a result, inviting friends to a server is extremely simple, so users that particularly enjoy a game or even just the game's community can have their friends join and find out more about it. Similarly, the announcement and feedback features in a server can have a huge impact on the development of a game. As an example, Behavior Interactive's Deathgarden experienced a lot of negative feedback on its initial launch, much of which was communicated through their Discord server. The feedback allowed Behavior to work with the community, figure out what wasn't quite working with the game, and as of this past month, Behavior successfully relaunched the game as Deathgarden: Bloodharvest. Before the days of Discord, games were often dead in the water if they weren't well received on launch, which typically would lead to poor sales and ultimately layoffs at studios. Without a dedicated community surrounding a studio, it can be much harder to interact with users and really figure out what does and doesn't work with a game. It's more important now to build a solid community surrounding your game or studio than ever before! Join Up Over the course of this article (originally published as a series), we’ll be going on our community-building journey. This series is designed to share tips and insights to help others build up a loyal fanbase and dedicated group of followers. Learn what works - and what doesn’t work - from our experiences. If you’d like to be a bigger part of our quest, please join our server! Action Plans - Why, What, and How? An action plan is exactly what it sounds like - it’s a roadmap of the tasks you need to perform. In this case, that roadmap leads to a thriving Discord server. But why do you need an action plan? There are several reasons. First and foremost, it helps put everything in perspective. Organization is key when it comes to setting up large scale projects such as this, so it’s important to make sure your objectives are crystal clear and carefully thought out. Action plans also create a clear timetable for when tasks need to be completed, and who needs to complete them. In some cases it may be necessary to break tasks up among multiple people, depending on their specific skill set or area of expertise. For example, one member of your team may be great at finding ways to promote your game through various marketing efforts, whereas another member may excel at using the Discord app itself. Creating your action plan is also a great time for brainstorming. Your peers may have ideas that you may not have thought of. If they are valuable enough, they can be added to the action plan as tasks. An Action Plan... In Action Your action plan should include a multitude of things, namely: questions that need answers, existing implemented features that could be improved, and a table for things that need to be done, as well as who will be in charge of completing said tasks. Below is an example of how the table can be set up, listed with tasks and who is assigned with completing them. Here, we can see a list of several names: Kyle, Bobby, Nate F, and James. Each of these members have a different skillset and have thus been given tasks that pertain to them. Kyle is skilled at using the Discord app, so has been charged with tasks that specifically involve setting up the server itself. Bobby is great at things like wikis, so he has been tasked with setting up two wikis for our game. Nate is a coder, so he’s been assigned with getting Rich Presence up and running in the server. James is our marketing guy, so he’s in charge of setting up a giveaway as well as setting up any other outside marketing to get people into the server. Action plans will vary from server-to-server. A server based on a whole studio with many games will have a different action plan than a server centered around a single game, for example. In our server, we have channels set up for each of our games, and different tasks pertaining to each one. A server for a single game will have different needs, and all tasks will end up pertaining to that game. Plan To Win Having a well-thought-out action plan will greatly increase your chances of success in creating your server. Once everything is clearly laid out and planned, it will give you and other members of your team a much clearer perspective on what needs to be done, and who needs to complete the tasks. Although an action plan is vital to making sure everything that’s necessary for setting up your server is completed, it’s just the beginning - the first piece in an otherwise much larger project. Think of your action plan as the box of a jigsaw puzzle, whereas setting up your server is the jigsaw puzzle itself. The box shows you exactly what it’s supposed to look like in the end, but it’s still up to you and your team to put the pieces together to complete the puzzle. Without the box, you have no idea what your puzzle is supposed to look like, and it’s only after you’ve begun putting it together that you’re able to figure out whether or not you’re missing any pieces. Hopefully, in the end, your puzzle will match the box. Steps for Styling It’s the little details and extra effort that will make your server appear more professional. This is especially important if you are running your server for a game or studio. Appearing unprofessional gives the impression that the studio doesn’t care, about their game or their community. Beyond improving presentation, polishing the server can also make it more eye-catching. Polishing your server involves multiple steps, but the end result should be that your server appears more organized, visually appealing, and functional: Step 1: Get Organized Before you begin polishing, take a step back and make sure everything is ready to go. Do you have the necessary channels? Do you have your user roles set up? Have you written out the rules and FAQ and given them a channel (or channels, if you split them)? If not, make sure you have that down before you worry about polishing. Step 2: Add Custom Emojis One thing you can do to add some flair to your server is adding emojis to channel names or even the category names. This isn’t necessary, and you may or may not like the look, but it’s certainly an option. We don’t use them in our server, but that’s simply a matter of preference. Plenty of servers use them to good effect. Step 3: Personalize The Artwork Another common way to add a personal, custom touch to your server is adding custom artwork themed to the game or studio to post rules and FAQ. This will help users actually see and (hopefully) read them. People respond much better to visuals, so if you have some nice looking graphics, people will be more inclined to engage with them. Step 4: Color Code Your Server One more thing you can do for adding some more visual appeal and organization is to color code the various roles in your server. Discord allows server admins to organize and color code the different roles, as well as have each role separated by the role hierarchy (roles are organized from top to bottom based on your list of roles in your server). This not only adds some color and personality to your server, but it gives users an immediate visual cue as to who’s who in the community. If you make all of your Mods or Staff blue, for example, community members immediately know that when they see a blue name, they are a mod. Not only does color coding look better and more organized, but it creates an important distinction between users. If everyone in the server has the same white color, users don’t know if they’re speaking to the server owner or some other random member of the community. Do It For The Fans Taking the time to make sure your server is looking and functioning well is one of the biggest differences between Discord amateurs and veterans. Having everything in its proper place, keeping it all organized, and color coding improves the visual appeal and enhances the server’s organization. It’s perfectly possible to run a server without going through all of these steps, but taking that extra step shows that you care about your server, your product, and most importantly, your community. Attack of The Bots So, what exactly are “Bots”? Aren’t they those things that people use in RuneScape to level up automatically? Well, yes, but not in this case. In terms of Discord, a Bot is a sort of plugin you can use for your server to perform many different functions that a normal user cannot (at least not easily). They are typically maintained and deployed through user commands or pre-set through a configuration page. Bots can be programmed to do almost anything on Discord, and as such, there are many, many different bots that all do different things. For example, bots can do things like keep track of user stats/metrics, award points based on activity in a server (or even a specific channel), hand out user roles, play music through a voice channel, auto-moderate your chat, and so much more. In fact, there are bots for almost any purpose and function. To avoid overload, the first thing you should do is narrow down which bots you should consider using in your server. A Robot Army Now that you have at least a vague understanding of what Bots are, here are some that are particularly useful across most types of servers: MEE6 MEE6 (yes, it is a reference to Mr. Meeseeks from Adult Swim’s Rick & Morty) is probably the most popular Discord bot. You’ll find it on many different servers, mostly because of its multipurpose nature and ease of use. It doesn’t require any commands to use (though you can set them up if you’d like), and it can do a multitude of different things, all of which it does very well. It can moderate your server through word filters, notify you when users go live on Twitch or upload a YouTube video, post messages on a timer, and award points based on user activity across the whole server, or in specific channels. There is a caveat, however. Certain features of MEE6 (and parts of some of the free ones) are only available if you purchase MEE6 Premium, the most significant being the previously free Role Reward feature. It can be pretty pricey, but depending on your budget and how badly you want to use the features, it can be worth it. ARCANE A MEE6 alternative that will level up users and award roles for free. Arcane’s description actually takes a bit of a jab at MEE6, saying “We will never charge a dime for our core features, ever. Levels with rewards, auto moderation, music. Dyno, Rythm, and MEE6 combined!” But seriously, if you’re looking for a Level and Role Reward bot but don’t feel like shelling out for MEE6 Premium, Arcane may be the bot you’re looking for. NIGHTBOT If you’re at all familiar with Twitch.tv, you’ve likely seen Nightbot in a few channels before. If you’re a streamer, you should definitely consider adding Nightbot to your Discord server as well. Commands are cross-compatible with the Twitch version, so users can use the same commands in both places. It also features auto-moderation, which can be handy if your server becomes quite large. CUSTOM BOTS While there are many, many different bots already out there for users to download for free, sometimes there isn’t one that can do what you’d like it to do. Maybe you have a specific need that isn’t covered by another Bot. In this case, it may be worth it to create your own (or hire someone to make it for you). For example, The Messenger Discord server (discord.gg/themessenger) has a couple of unique custom bots, one of which is the Clockwork Concierge, which awards Time Shards upon people “joining the #dojo”. If you have a specific need or theme to your server, a custom bot may be the way to go. The Tip of The Botberg There are many other types of bots, like economy bots, team-finding bots like Guilded, and music bots like Rythm. Rest assured, there are plenty of options for you to tailor your server to your needs. They can add a ton of personality and functionality to a server, which can play a big part in getting users to stick around longer and stay active… Speaking of which, that’s exactly what we’ll be covering in the finale of Building A Discord. Check out and follow our blog, and stay tuned for our final blog in which we’ll talk about how to get people into your server, and more importantly, how to get them to be active and stay in your server. If you enjoyed this article, check out our website, our blog where you'll find more great articles, or join our Discord. Note: This article was originally published as a multipart series on the Mega Cat Studios blog, and is republished here with the kind permission of the original author. Links to the original parts of the series are below. A firth part (not included above - go check it out!) will also be published covering how to build and maintain an active community. Part 1: What is Discord and why should you use it? Part 2: Creating an action plan for building and developing your server Part 3: How to add polish and flare Part 4: Adding bots to your Discord server
    43. Currently.i need to fetch some data from a web page but i cant get anything from it. Reading through internet all samples provide something like this: - connect socket to server with port 80 - write http request - read back data And they all say it works, but well not for me.. Heres a sample code i use - i use a class from my networking engine so it should work. int main() { TCPWindowLayerClient * c = new TCPWindowLayerClient(); c->ConnectTo("http://www.google.com", 80); SendStrToFd( "GET / HTTP/1.1\r\nHost: http://www.google.com\r\nConnection: close\r\n\r\n", c->sockfd); int * ppos = new int; bool breakme = false; while ( !breakme ) { int nbytes; (*ppos) = 0; AnsiString r = read_from_fd2(c->sockfd, c->pdata, ppos, max_tcp_buff_size, nbytes); breakme = (nbytes <= 0); cout << r.c_str(); } cout << "end."; return 0; } Only end. Is displayed and errno is 107 which means connection is closed.
    44. Gnollrunner

      Has C# replaced C++?

      I personally don't think C# will ever replace C++. Maybe something else will, at some point in the distant future. C# is a byte code compiled / JIT language and has a garbage collector. I realize MS has added features to optionally work around both these things but they weren't originally part of the concept. My feeling is to get to the point that it has the performance to really replace C++, it will end up being just as hacked up as C++ has become if not more. If I'm going to use a hacked up language, I might as well use one that is not so closely tied to a single company. With C++ at least you can just ignore the features you don't like and work with a subset.
    45. deitty

      Modern game engine written in C

      HI friend, you are great. currently I am hesatating whether use ue4 or design my own engine. can we co-work to make a game?
    46. If anyone on this forum is interested I did a comparison of the build size and performance of the same project with Wwise vs Unity Audio packages. Basically I found out that Wwise is very light on the build size for the most basic features and was at least as good as if not better for game performance. It's not a very scientific comparison and the performance testing is pretty light but I found the project a good way to start looking at Wwise and pretty interesting results. http://www.zuluonezero.net/2019/08/18/unity-audio-vs-wwise/
    47. erpeo93

      Network Library API critique

      I think that thread safety is one of the strength point of the library at the moment: you can send packets on the same connection from multiple threads, while receiving packets for the same connection on yet another thread. I will have to think more about the "dispatch packet to application" part of the library, in the hope of finding the best possible solution in terms of both performance and readability of the api. Thanks a lot for the feedback, it was exactly what I was searching for... I will definitively give you an update on this thread when the time comes. (Unfortunately I don't think I'll have time to work _solely_ on this library during the next months...)
    48. Steve-0

      T-Crisis V

      [DOWNLOAD] above contains the game and full open-source JavaScript source code. Could not figure out how to make HTML5 run on Gamedev. You can play the game in your Internet browser on New Grounds below: https://www.newgrounds.com/portal/view/737024?updated=1566405186 You can download the ZIP above of the game but it may not run locally on your Internet browser. (try to right-click on index.html in the game's folder and "Open With" Edge/Firefox/Chrome) If the game does not run locally on your Internet browser then you must upload it somewhere and run it through the Internet. Enjoy!
    49. Vilem Otte

      DOOM: Challenge accepted!

      I have been deciding to participate in Challenges for quite long time, mainly because I personally wanted to. And when DOOM was voted in, I decided I had to participate. Of course I have to start somewhere (I made a road map, which is something I'm trying to hold to - and throughout the challenge I'm going to switch between working on art and working on source code). So let's consider this as first post, and let's see what I will manage to finish in the end. A little sneak peek into how the project is looking at current stage. Some of you may have recognized that this is Sponza Atrium model (it is not easy to recognize it though - as the image is actually showing barycentric coordinates in red/green channel and distance traveled along the ray in blue) which I'm using for testing, as I'm working on using a custom GPU real time ray tracer as renderer (it is DOOM after all, which originally used a ray caster - so for me, it was natural to use a ray tracer).
    50. Nypyren

      Has C# replaced C++?

      I can't say. We only run Unity on our developer machines (OSX, Windows) and end-user devices (iOS, Android, and WebGL). Our Linux servers don't run Unity at all.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!