Madolite

Members
  • Content count

    90
  • Joined

  • Last visited

Community Reputation

393 Neutral

About Madolite

  • Rank
    Member

Personal Information

  • Interests
    Art
  1. C++ Will it cast?

    "If you can't explain something in simple terms, you haven't understood it well enough." - Albert Einstein I know full well the ranges of floats and doubles. My mistake was assuming that IEE754 is the only standard of determining floating point ranges, which the guys on Discord reassured me was wrong. And yes, your article bring that up as well, to some extent, but do you really need people to read that entire article just to get that simple concept clarified? The other guys on Discord seemed to have no problems answering this in 5 seconds, once they identified the question (which I know I can be bad at, sometimes, so don't worry). But I'm certainly not an idiot, nor did you ever say as such, but you certainly seem to implied it, through your reply. And fastcall22 and matt77hias both mentioned IEE754 as well, and I don't see you replying to and correcting them for assuming that IEE754 was in place here. Then what is your issue with my comment? Feel free to explain why specifically you thought I didn't understand basic floating point arithmetic that most people who care are able to google in 10 seconds, so I know how to phrase myself in the future. There seems to be something seriously NOT COOL going on here, between you and me, right now. And I'd like to get to the bottom of it. Perhaps in PM, if necessary.
  2. C++ Will it cast?

    I know about the accuracy of floating point numbers, but I didn't realize it went both ways. So using an int cast isn't always accurate and you need to explicitly truncate or w/e beforehand, and then cast it? I thought casting from "more complex to less complex" automatically truncated a value? Edit: I asked about it on Discord and yeah, seems like casts aren't always just reading the presented float value (in code), but rather the actual bit value (like when embedding or doing other funky stuff across systems). Which could make weird things happen for sure. So 280.00 could become 279 when cast to an int (well maybe not 280.00 in particular, but some equivalent value with less casting accuracy, I'm sure you get my point). Thanks, I had no idea. Either way, as said, one should never assume that floats are exactly the value that we see, unless we know it otherwise. So checking range seems like the way to go (at least most of the time).
  3. C++ Will it cast?

    To my knowledge, although I could be wrong in some contexts (I'm no expert), you should never check for exact values when dealing with floating point values - always check for ranges. Why is this relevant, you might ask? Because if what I said is true, then whether or not (float)i returns exactly 208.0... should be completely uninteresting to you. (Since your question was already answered, I thought I'd just respond to a possible reason why you asked it, to begin with.)
  4. Thanks. Now that I think of it, I'm somewhat conflating what would be smart to default my keys to, with whatever the user might want to rebind them to, which is their responsibility and not my own. So I think I'll just include every key in the rebindable list, and instead just setup the defaults to the more common keys. I'm certainly going to have a "Revert to Default" option anyways. I'm trying to stick with XNA's Keys enum which is (afaik) is higher level and culture independent, but I'll keep your tip in mind and play around with it if needed. Thanks.
  5. (Note to Mods: Could "Input" or "Peripherals" be a good Tag to add to the tag list? Just a thought.) Hey, I'm currently working on which keys on a keyboard that a user can rebind their actions to. The trick is that I use a Norwegian keyboard, so it's not obvious which keys correspond to the actual C#/XNA Keys enum values. Are there any keys from the XNA Keys enum that, in your opinion, I've neglected to add? I don't need all Keys to be bindable, only the "most commonly used keys on a keyboard". Thanks. https://pastebin.com/n1cz8Y0u
  6. True, I responded in a belittling fashion because I, in the moment, thought @Promit accusations of me being racist, just because my statements happen to semantically coincide with how some Alt-Right bigots defend their racism. I was trying to explain to Promit how "the cause behind a statement" and "the statement itself" is two different things. I will, however, take responsibility for my tone of voice and refrain from this in the future. Taking overtly racist positions in your arguments. I should not have to explain that racism is not something we tolerate here. I disagree. I didn't take any position at all, during this discussion. I simply shared a piece of fact, a piece that may very well, as @Promit pointed out, be incorrect. But it's still a factual claim, one that either has a source or not. I provided the short-hand source by linking the Bell Curve book and this link: https://iq-research.info/en/page/average-iq-by-country (first result in google). But to clarify and reiterate, I'm not implying here that Google and Wikipedia are valid sources, nor am I disregarding your point and my reasons for being banned. Those are fine, as long as it's not permanent. Yes, the last straw was your extremely childish, rude attempt to spam the channel with a link to a website about global IQ averages. This would not be enough to ban you on its own, but in along with the above? Yes, you were banned. Let me clarify what my whole goal was, on Discord, at that point. I was trying to address a deeper underlying problem with racism, one that is critically important to understand if we're ever going to get rid of racism in society. Now, I could explain what that deeper problem is, but I feel like today is not the right time. Suffice to say that, claiming that one isn't racist or claiming that one is against racism, does NOT exempt people from being racists themselves (albeit in less obvious ways). Either way, 8 hourse is fine by me and I will certainly be more careful in the future. But just remember that, when you accuse someone of being a racist (or a rapist, or bigot, or anything, for that matter), you tend to get a reaction. Anyways, thanks for the quick reply.
  7. Hey guys, I just got banned from Discord by @Promit First off, the direct reason why I got banned was because I, out of frustration, copy-pasted a link of the global IQ average. I did this because @Promit kept asking me about it, in fact "giving me an ultimatum" (as he put it himself), in spite of me already having linked it once. This was after a heated debate about work hirings and racism in employment, which led to talking about race and how education, IQ and other things affect the outcome of employment. Secondly, he told me to stop talking about the issue and I did, upon which he then continued the debate and baited me. And yes, I should've kept my mouth shut and just let him rant away, but I didn't. Because I was upset about the fact that he defamed me by calling me a racists and literally starting a fight. Yes, I am perfectly aware of the fact that The Bell Curve is a controversial book (even though people like Sam Harris and others have claimed that the content is completely uncontroversial among neuroscientists) and that IQ factors in only minimally in determining a person's qualifications for a job. But I have made no other claims. This is an vile, defamatory assumption made by @Promit based on how he interpreted the pure semantics of my statements, believing it to be alt-right nonsense. Let me be perfectly clear that, when I judge people's merits, I judge them based on their actually individual, demonstrable qualities. I don't give a rats ass about their gender, color of skin or what have you. It's NOT MY FAULT that scientists around the globe have agreed on the fact that IQ varies between people. It's NOT MY FAULT that IQ is a scientifically valid concept, and not considered pseudo-science by consensus. And ALL I DID with this data was to point out the simple, logical fact that, if a given test groups average IQ matters, then we should probably look deeper into it. Instead of pretending that it doesn't. I don't even have an opinion as to whether IQ matters or not, BUT EVERY GODDAMN psychologist that I've ever talked to have told me that it is. Yes, I accept responsibility for taking this too far. But if people here believe that @Promit was without blame here, then you have my resignation from this community. Otherwise, I hope you'll have a hard talk with this guy and, if need be, revoke his moderator access. Because quite frankly, I'm disgusted by him at this point. This was basically him bait-and-switching me into going apeshit on him. To @Promit: Congrats, you won "slow clap". Might I suggest that you link the whole transcript as is, and show it to other moderators, and that you actually discuss it, instead of reacting emotionally and personally, like you did. Notice how I did virtually nothing but defend myself against accusations, here. To Discord: I suggest that you guys get a mute button in cases where people are, in emotional moments, prevented from speaking for, say, 1 hour (or 1 day). Yes, I know it's not your job to babysit people, but afaik I got a fairly clean Discord record and I honestly think it's overkill to perma-ban people who has a different opinion than a moderator (if that was even the case, which it wasn't in this situation - because I HAVE TO DAMN OPINION on the matter). Yes, I've been stubborn in the past, but I like to think that I've always shut up when moderators have put the foot down. And I'm aware of my issue and try not to even enter these debates. Thanks.
  8. Cache Coherency and Object Update

    What does that have to do with OOP? Isn't OOP quite literally the idea that you're encapsulating chunks of code into individual "object calls", so as to construct and destroy the data on the fly as needed instead of having to store it cleverly in memory using overly obnoxious C spaghetti code in an attempt to reuse persistently stored data as much as possible? Sorry, I'm a self-taught amateur so maybe I've misunderstood what OOP means.
  9. Cache Coherency and Object Update

    Ok, I'm not sure how useful my reply is here (I'm too lazy to read through all comments), but just keep in mind that composition versus inheritance is more than just a technical thing. It's a readability issue as well as a "use as needed" thing as jpetrie pointed out. Sometimes, they're incomparable. I mean, what's best - driving a car or eating a hamburger? A platipus lays eggs and has a duck beak, but it's a mammal. Evolution and emergence aren't always inherit-friendly. Try designing a platipus-type object using inheritance only, without resorting to repeated code or multiple inheritance (which I, as an amateur, hear from people = pure evil). Also, a Command Pattern is useful when you have unrelated objects of very specific shared attributes like Move(), TurnOn(), Fly() or w/e that, abstractly, do the exact same thing (e.g. "Move()"), but concretely are different from eachother (e.g. "MoveInDrunkenStupor()". So there's abstraction and decoupling involved. When you tell X.Fly(), it flies differently way than if you tell Y.Fly(), because you've used a hierarchy of interfaces as a middle man and defined two different Move() functions - FlyLikeABird() and SwimLikeAFish(). But the Move() function of both X and Y are still both just Move(). Command patterns explained: https://en.wikipedia.org/wiki/Command_pattern But you tell me. It all depends on how many different kinds of objects that you want to give certain shared attributes. Choosing whether you use inheritance or composition (or both, or neither) for a given task should come intuitively to you. "Can I fit this ability into an existing Inheritance tree?" If yes, then do it. If not, then use composition. If both methods require too much coding for the simplest thing, use neither. If your component hierarchy is complex enough, perhaps use both. Again, sorry if my comment is totally missing the mark. I'm no expert though, so I may be mistaken on some things.
  10. Sorry, I guess I meant F#. My bad and fixed.
  11. Based on what I've heard from top devs - Lua (supergood for devs), C# and C++ are three. Then learn SQL, XML, etc to support your projects. Also (if you're a gamedev) learn at least 1 game engine, like Unreal Engine or Unity. Even Gamemaker is worth it, at least for prototyping. But again, that's coming from others not me. I'm no expert. It depends on what you're programming. Knowing a language is one thing, but knowing how to code is quite a different thing. There's abstractions and paradigms you need to understand, clean code, proper commenting, architecture, etc etc. Don't worry though, it'll all come in due time. Just keep at it. Learning a new language after you learned your first one is proportionally easier. Especially after learning something comprehensive like C++ or even C#. I'm guessing a "functional language" (like (edit:) F#) is also nice to know, depending on your specific field. But don't take my word for it.
  12. Its hard to take you seriously, when you say 100 games (or even 50 games, given your implied flexibility), as you're more likely to be repeating the same code over and over instead of actually learning anything through fleshing out a bigger project (and by bigger, I mean "still fairly small" since you want to "scope small", as they say). Keep in mind that, unless you have a sizable team to work with, even your smaller games are going to require months of work if you want to build anything that is worth playing. Even simple mobile apps for iPhone take 18 weeks on average, according to google. And that probably assumes some team-based effort. Also, let's be realistic. What would even be the purpose of making that many games? You would see greatly diminished returns on your learning long before you're done with even your 10th game. Focus on 1 game at a time, and visit the various concepts you want to learn through each subsequent projects. (Good) games are extremely iterative in their design, which means that you don't need to know a lot of the stuff on day 1. Things will come to you in due time and as you're gradually becoming better and coupling your development with constant study and learning. Just start making your first game, and iterate on it. And what do you even mean by 100 game concepts/genres? Just play a lot of games and you'll learn which genres and concepts exists. Always start with some core game functionality that is going to be the meat of the experience, then expand upon that relative to the size that you're aiming for. Then make your next game when you're ready. Iteration is the key, not planning 25-50 years worth of gaming. I've played well over 700 games in my life (which are necessarily across most, if not all, genres and conventional settings). There's really not that many of them. Successful games tend to converge on a small subset of genres compared to the total number of genres that could potentially (an unsuccessfully) exist.
  13. Which color picker do you prefer?

    I prefer whichever allows me to type in the Hexcode. Edit: But given the four choices above, I tend to prefer the bottom left (circular) one, because that's how I see the primary colors in my mind's eye.
  14. Maximum sprite size for make game

    I read your post as: "I want to make a 2D game for mobile. But my image frame doesn't fit the 1024p sprite sheet. So, is there any problem if I use bigger that 1024p sprite size?" How big are your individual sprites and what spritesheet location are you trying to draw it from? Although to me it sounds like you are trying to make a spritesheet rather than load and access it in memory. You can make spritesheets of any size as long as it's not ludicrously large. For mobile, there's some limitations but you should never need spritesheets of > 1024p anyways. Just make sure that your code defines a sprite as a certain location of the spritesheet that has height and width according to the sprite you want to use. Finally, try to find a way to pre-compile your images to binary files. In MonoGame, I'm doing this through its built-in "Content Pipeline". But I'm not sure what you're using to make your project. But Idk, it's really hard to understand your english. I think you should get some english grammar out of the way before you continue on your project. Because it's just gonna sabotage you more and more, the deeper you get into your project. Also, make sure you also mention what language you're writing in and which frameworks/engines you're using. It helps us understand your problem a lot better.
  15. "You just learned C++? Good, now learn A++!" - High Expectations Japanese Dad