Hi João,
Here is the link to one of our articles where we simulated a genetic rescue for a brown bear population. The methodology is very similar to what you want to do, so you might find some useful ideas there.
For the bottleneck, I think adjusting the population size with fitnessScaling using a smaller carrying capacity is a good approach, we used that in our study, but let's say it's a very basic approach.
Regarding your second question, if you want to randomly select individuals from population 1, you can use “p1.sampleIndividuals();”. Whether this approach is suitable depends on your goal. If you want your ex-situ population founders to be random individuals, this method works. If you want them to have specific age or fitness characteristics, you'll need to specify these parameters in the sampling.
I hope these suggestions help you.
Greetings,
Victor