Pokitto Ware Factory idea


#41

You can post them here too.
The forum accepts .pngs.
Unless you’ve already used bmp2pok or img2pok to convert them?

If you want to post them though, try uploading them to this branch rather than master:

That’s something.
Is there something specific that you’d like to know more about?

And since I didn’t check before, have you read any other C++ tutorials before?.

The font will look a bit weird at that size, but lores is probably easier to work with.


#42

22 posts were split to a new topic: Problems compiling with PlatformIO


#45

The font size is going to be an issue.
I just tested mode 2:

firmware.bin (36.2 KB)


#46

Allrighty, whatever size you think will work best then, when I get home tonight I’ll try uploading the images here


#66

@BigBadHodad
Getting back on topic,
Have you read any other C++ tutorials before?
Is there something specific that you’d like to know more about?

And have you got those images that you edited?
I can reproduce them based on what you posted earlier, but it would be easier if you already had them available to upload.


#67

I have them I am not sure if I can upload them, they are .piskel format from the application

I uploaded them to the Git page


#68

The images you uploaded were proper .png files, which was correct.
I’ve moved them to a separate folder.
I’ll convert and add them to the game at some point.


Sorry to be insistant, but you still haven’t answered my questions.

If the aim of this is to help you learn to program then I need to have an idea of how much you know already and specifically which things you already know.
There needs to be ‘back and forth’ communication or you won’t learn anything.


#69

Sorry, I honestly know 0 about C, I’ve tried scratch but to no avail,


#70

Sorry for my delay in replying to this.
One of my projects has run over due to unforseen bugs.


(C++, not C.)

If you are only just beginning then I’m not sure you’re ready to jump into making a game.
You need to start smaller until you understand the basics.
Programming isn’t something you can learn ‘on the job’ if you don’t already understand the basics.

We don’t yet have a proper C++ tutorial for Pokitto unfortunately.
I’d suggest having a go at this tutorial to do some desktop C++ programming:


And then come back to this project afterwards.

It might not seem as fun, but it’s easier that way.
I can still clarify things if you find something you understand, but if you don’t yet know about variables and if statements then the current code will almost certainly be difficult to understand.


#71

I agree with Pharap. But if you need a bit more hands on here’s a pretty good video tutorial on the subject from a guy working at EA, tools might be different but allot of stuff still applies.


#72

I had a quick skim through a few of the videos. Overall it seems good.
Glad to see someone being honest upfront about int having a different range on different platforms.
A couple of good analogies and explanations.
The order things are introduced seems a bit odd to me, .e.g the choice to introduce functions before conditionals.

My biggest disappointments were the use of std::endl, using post-decrement instead of predecrement, introducing unscoped enums instead of scoped enums and the video on destructors being shorter than the one about mutable (there probably shouldn’t even be one about mutable, it’s rarely used and should be avoided).


#74

yes sorry this comes from a game engine guy so there priorities are a bit all over the place, and they sort of do it sort of by request, the right order of a tutorial is hard, i know there better tutorials but there usualy behind a paywall or a book.

@Pharap what you think of https://learnxinyminutes.com/docs/c++/


#75

Some good points and bad points, but mostly good.
Probably more useful for someone who already knows how to program than for a beginner.
The video series by the Aussie would be of more use to a beginner.

I’m going to put all my nitpicks in a details block to avoid clogging up the thread.
(To be honest I’d probably find fault with any tutorial, I’m very picky. :P)

Nitpicks

They missed an important point at:

// C standard headers are available in C++,
// but are prefixed with “c” and have no .h suffix.
#include

When using the c-prefix headers, there’s no guarantee that the contents will be included into the global namespace, there’s only a guarantee that the contents will be included into the std namespace.
I.e. printf("Hello, world!\n") might not compile, you might have to use std::printf("Hello, world!\n").

I’m not keen on the fact they’ve shown a global using namespace std; without explaining why that’s frowned upon.
(I only ever use using namespace Pokitto; at function scope.)

They don’t mention it, but hopefully it will be obvious that cin >> myInt will throw an exception if the input isn’t a valid int.

I’m upset to see endl again. The problem with std::endl is that it doesn’t just print a newline, it also flushes the output buffer, so having lots of them in a row slows down the program.
That’s fine for really short simple programs, but it’s a bad habit to learn and unfortunately its use in tutorials is the main reason it’s spreading.

The stuff about references was useful, glad to see references mentioned before pointers.
References should be preferred over pointers.

Disappointed to see plain enums being introduced before scoped enums, but at least scoped enums get a mention.

I detest classes named after animals used for inheritance.
It doesn’t adequately illustrate the concept of inheritance, often people get the wrong end of the stick.

The eventually mention “// Never put a “using namespace” statement in a header.”, but it’s a bit late by that point and they don’t explain why. Saying ‘never do this’ without explaining is bad because people take the rules to heart and forget why those rules exist.

The lack of this-> disappoints me, but sadly not bothering with the this-> is quite common.

Good to see initialisation lists being used.

Unfortunate to see a binary operator being implemented as a member function instead of a free function.

Teaching Point up (0,1); initialisation style runs the risk of hitting the most vexing parse problem

Good to see them mentioning the >> problem with templates.
And that if you’re using C++11, you don’t have to worry about it :P.

Their section about exceptions fails to mention that exceptions should not be caught unless they are either able to be handled or they are logged and rethrown.

Glad to see RAII is covered, I especially like that they are using it to demonstrate why exceptions are easier to work with than error codes.
The goto failure; idiom of C was the main cause of Apple’s infamous goto fail; bug.

The ‘fun stuff’ section neglects to menion that most of those bad/surprising things are C’s fault.
If C++ had made more of an effort to fix C’s problems then it would be an even better language than it already is.

The tuple stuff is pretty good, apart from the issues I mentioned in earlier sections (not qualifying with std:: all the time, using the potential ‘most vexing parse’ syntax).

Containers should be covered earlier than they are, but otherwise is mostly good.
(Though there’s no reason to not declare the iterator inside the for loop expression.)
They could do with being a bit more in depth though, there’s a lot of stuff about containers that this doesn’t cover.

Logical operators should be covered a lot earlier.
No need to mention the ‘equivalent keywords’ because nobody uses those in real-world code.
Likewise for the bitwise operators.


#76

@Pharap can you please write a book XD


#77

Seconded. If it was a Kickstarter, I’d back it.


#78

I think it’s already been written, it’s just scattered all around the Internet forums :slight_smile:


#79

7 posts were split to a new topic: What makes a good tutorial? (& thoughts about general education)