Well, I know a very basics of CBOT and this didn't stop me teachnig young kids at Devoxx4Kids PL 2014.
Shoutbox archive
Sometimes it's easier to learn something without fully understanding how it works. When I was learning basics of programming, I didn't understand variables. They were just useful containers for numbers and stuff. I didn't know about memory cells and type specifics. I simply knew they existed there, somehow, and they did their job. It took me many years to fully comprehend differences and implementations of variables and their types. It would be very pointless to learn all this at the beginning. When you start, you need to know that there's this thingy called "value" that can keep numbers and you can use it for adding and multiplying. You don't need to know that this variable is 4 bytes in little endian inside a stack frame. You'll get there when you need it. In the same way you don't learn architecture theory right away. First you learn how to use a hammer and nails. You'll get to designing houses later.
When I started learning I had problems with the concept of variables, not even talking about loops. Programming is hard since the very beginning, because it requires to learn a new way of thinking. It seems easy after years of coding because you mastered the most basic concepts, but from my experience, many people struggle with those basics, including me in my young ages. It's almost as hard as math, hell, Computer Science is a branch of math. Even at university there exist people who have no problems with linear algebra, calculus and other high level math, but still struggle when it comes to coding. Everything is easy when you already learned it, but the process of learning is not easy in every subject. As it's written in the link provided, we should stop saying that some things are "easy" or "obvious", because when someone is learning it's really not and such statements only lower self-confidence in beginners and increase their chance of abandoning the subject, because "everyone says it is easy, so maybe I'm too stupid to learn this". I just hate when a math teacher says something like "... and this means that (insert some not proven fact here), obviously, ..." and then I'm losing myself for hours wondering "but, but, why is that true?!".
Plus there are different programming languages with different difficulty levels. Programming in one can be easy. Programming in other can be hard.
Depends on the level of programming you want to achieve. Beginner programmer needs to know language syntax and understand basics of coding. It's easy. Good programmer needs to know a lot more. That's harder. Master programmer might want to know how language itself is processed by a compiler/interpreter and what is produced. That's even harder.
Learning programming is not easy. Learning language syntax may be easy, but just because you learned how to use a hammer doesn't mean you can build a house.
Well, yeah, but it's engine thing. Then again, I'm making so called "simple platformed", so it's not like physics or rendering needs to be over the moon
It's not a good idea to use pixels for collision. It works in some games, like Worms, but general physics engine is difficult to implement. And it will limit you in rendering.
I mean, I did come up with something that works ok, I'm just not pleased with it, as for example it doesn't allow you to slide off too steep slope
Well, I should probably mention that collisions are pixel-based, so practically slope is bunch of low walls... basically like stairs
The easiest situation is when you have a flat surface moving on slope. Curved surface is usually divided into flat surfaces.
If you mean general movement on the slope... You need to calculate force towards slope's surface, force down the slope, and friction if necessary.
@tomaszkax86 I have more troubles with thinking how such mechanism would work. I do have reliable ways to detect collision with slopes (or anything) if that's what you are talking about
@RaptorParkowsky See if this works for you on Linux http://krzysh.pl/colobot-linux-test.tar.gz
Well, I didn't think coding in general would be easy, just din't expect slopes in particular to be so difficult
Depending on how you implement elements in your game, physics can be implemented in various ways.