Ok, it's pretty simple. For the sake of simplicity, I'll use a single common event, three variables and a few items (Fishing Rod, various fishes). So, first, define three variables: 1) Fishing Level. 2) Fishing Exp. 3) Fishing Outcome. Now, go into the Common Events tab in the database. And make the event look something like this:
Conditional Branch: [Fishing Rod] in Inventory
Conditional Branch: Variable [Fishing Level] = 0
Control Variables: [Fishing Outcome] == Random No. (0...4)
Conditional Branch: Variable [Fishing Outcome] = 0
Wait: 50 Frames
Play SE: '015-Jump01'
Show Animation: Player, [Exclamation]
Text: You caught a Common Fish!
Change Items: [Common Fish] + 1
Control Variables: [Fishing Exp] + 1
Else
Wait: 150 Frames
Text: You caught nothing
Branch END
Else
Conditional Branch: Variable [Fishing Level] = 1
Control Variables: [Fishing Outcome] = Random No. (0...9)
Conditional Branch: Variable [Fishing Outcome] <= 2
Wait: 50 Frames
Play SE: '015-Jump01'
Show Animation: Player, [Exclamation]
Text: You caught a Common Fish!
Change Items: [Common Fish] + 1
Control Variables: [Fishing Exp] + 1
Else
Conditional Branch: Variable [Fishing Outcome] == 3
Wait: 50 Frames
Play SE: '015-Jump01'
Show Animation: Player, [Exclamation]
Text: You caught a Regular Fish!
Change Items: [Regular Fish] + 1
Control Variables: [Fishing Exp] + 1
Else
Wait: 150 Frames
Text: You catch nothing
Else
Conditional Branch: Variable [Fishing Level] = <>
<Continue to do the same process for higher Levels>
Branch END
Conditional Branch: Variable [Fishing Exp] == 10
Text: You are now a level 1 Fisher!
Control Variables: [Fishing Level] == 1
Branch END
Conditional Branch: Variable [Fishing Exp] == 100
Text: You are now a level 2 Fisher!
Control Variables: [Fishing Level] == 2
Branch END
Conditional Branch: Variable [Fishing Exp] == <>
<contine for higher levels>
Else
Text: You can't fish! You don't have a fishing rod!
I think I missed a few Branch ENDs but that should work. Wherever you want fishing, just make an event which calls this common event. Basically, this particular one gives a 20% chance of catching a Common Fish at Level 0. After you have successfully caught 10 Common Fish, then you advance to Level 1. At Level 1, there is a 30% chance of catching a Common Fish and a 10% chance of catching a Regular Fish. After successfully catching another 90 Fish, you would advance to Level 2, etc... If you need any help understanding just post. I am not sure how to post a demo, but I'll see if I can't figure out a way to do it if what I have already done is a bit confusing.