It's perfectly possible to write an entire gamemode or filterscript without using any plugins.
However, you'll be limited to what you can do.
For example, without the streamer, you'll be limited to 1000 objects for your maps.
https://sampwiki.blast.hk/wiki/Limits
You can also only have 1 checkpoint, while the streamer can have an almost endless amount of checkpoints.
There are also alot of other limits which can be circumvented using the streamer.
Not using the streamer will automatically prevent you from creating a huge new mapping filterscript as you'll hit the samp object-limit very quickly.
Without sscanf, you'll also have to split up your parameters yourself somehow and write code to check if you entered a player-name or his ID as parameter.
Like "/givemoney AmigaBlizzard 100000" or "/givemoney 19 100000".
These could mean the same thing if I were to be player-ID 19, but your command would need to be able to work with both scenario's, since most players have become used to this (typing either the full name, part-of-name or a player's id).
Or even "/givemoney Amiga 100000".
If there is nobody else online with a name that starts with Amiga, sscanf will automatically accept me as valid player without the need to fully type the name of the player.
You'll end up writing replacement code for those plugins sometime anyways, so it's faster and easier to start off using them right away and consider those plugins to be a part of the basic samp package.
Plugins that should be part of the basic samp package:
- MySQL
- streamer
- sscanf
- zcmd